Python:从模块(不同的 python 文件)导入时生成不同的随机选择 - 保持相同的输出
Python: generate a different random choice when importing from module (different python file) - Keep getting same output
我有一个从列表中选择不同评论的代码,它存储在一个单独的 python 文件中,例如 comments.py:
import random
theitems = ['a','b','c','d','e','f']
commentpick = random.choice(theitems)
我在主文件中有以下代码:
from comments import commentpick
for a in commentboxes:
a.send_keys(commentpick)
然而,对于评论框中的所有 'a',将返回相同的评论:
[例如。 5 个输入,'a'、'a'、'a'、'a'、'a']
它只有在我随机导入并在主文件上执行时才有效,如下所示:
for a in commentboxes:
a.send_keys(random.choice(theitems))
那么结果会有所不同,[例如。 'a'、'c'、'e'、'd'、'f']
有什么方法可以让我直接写 a.send_keys(commentpick) 而无需在主文件中执行 random.choice 但每次仍然得到不同的结果?谢谢。
你应该把
commentpick = random.choice(theitems)
在函数中,这样你就可以每次调用随机函数来调用你构建的函数
例如:
comments.py
def commentpick():
theitems = ['a','b','c','d','e','f']
commentpick = random.choice(theitems)
return commentpick
在您的主文件中:
from comments import commentpick
for a in commentboxes:
a.send_keys(commentpick())
你的问题是你只调用了一次并保存了值并多次使用。
我有一个从列表中选择不同评论的代码,它存储在一个单独的 python 文件中,例如 comments.py:
import random
theitems = ['a','b','c','d','e','f']
commentpick = random.choice(theitems)
我在主文件中有以下代码:
from comments import commentpick
for a in commentboxes:
a.send_keys(commentpick)
然而,对于评论框中的所有 'a',将返回相同的评论: [例如。 5 个输入,'a'、'a'、'a'、'a'、'a']
它只有在我随机导入并在主文件上执行时才有效,如下所示:
for a in commentboxes:
a.send_keys(random.choice(theitems))
那么结果会有所不同,[例如。 'a'、'c'、'e'、'd'、'f']
有什么方法可以让我直接写 a.send_keys(commentpick) 而无需在主文件中执行 random.choice 但每次仍然得到不同的结果?谢谢。
你应该把
commentpick = random.choice(theitems)
在函数中,这样你就可以每次调用随机函数来调用你构建的函数
例如: comments.py
def commentpick():
theitems = ['a','b','c','d','e','f']
commentpick = random.choice(theitems)
return commentpick
在您的主文件中:
from comments import commentpick
for a in commentboxes:
a.send_keys(commentpick())
你的问题是你只调用了一次并保存了值并多次使用。