【问题标题】:Can the count function be used for strings within a function?count 函数可以用于函数中的字符串吗?
【发布时间】:2021-03-22 14:09:38
【问题描述】:

我正在尝试创建一个从两个选项中随机选择九次并返回每个选项被选择的次数的函数。但是,每次我尝试运行代码时,count 函数都会返回 [None]。

 import random
topic=["Insomnia","REM Sleep Disorder"]
def func():
  print(random.choice(topic))
  print(random.choice(topic))
  print(random.choice(topic))
  print(random.choice(topic))
  print(random.choice(topic))
  print(random.choice(topic))
  print(random.choice(topic))
  print(random.choice(topic))
  print(random.choice(topic))


  
x=[func()]
y=x.count("Insomnia")
print(x)

我做错了什么?

【问题讨论】:

  • func() 中打印内容对x 没有任何作用。您需要遵循有关函数的教程。 Stack Overflow 并非旨在取代现有的文档和教程,因为它旨在回答特定问题,而不是让您对一堆相关概念有广泛的了解。

标签: python list function random count


【解决方案1】:

这应该是个评论,但我觉得太长了……

您没有在 func 中设置任何内容 - 您只是打印出信息。如果你想使用函数的输出信息,你必须返回它。

def func() 
    return [ random.choice(topic) for _ in range(9) ]

应该为您返回一个包含 9 个随机选项的列表,尽管您可以直接使用列表推导并在此处避免使用该函数。

【讨论】:

  • func() 已经返回一个列表,不需要使用 x=[func()],使用 x=func()
  • 不,我说过会返回一个列表
  • 是的,我知道。我的意思是他的实现有一个小错误,因为他将你的回报打包在另一个列表中;)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-04-29
  • 2017-10-17
  • 1970-01-01
  • 2018-10-02
  • 1970-01-01
  • 2021-08-29
  • 1970-01-01
相关资源
最近更新 更多