我想要有多个变量设置为列表中的随机元素.现在我做的有点像这样:
from random import choice
list = ["a", "b"]
foo = choice(list)
bar = choice(list)
baz = choice(list) #etc.
Run Code Online (Sandbox Code Playgroud)
我确信有更好的方法可以做到这一点.我试过了
foo = bar = baz = choice(list)
Run Code Online (Sandbox Code Playgroud)
但是,当然它只是将它们全部设置为列表中随机选择的一个元素,并且我希望每个变量都设置为新的random.choice.
random.sample()如果你想从列表中剔除三个不同的元素(即foo永远不等于bar,可能不是你想要的),你可以使用:
foo, bar, baz = random.sample(l, 3)
Run Code Online (Sandbox Code Playgroud)
我将您的变量重命名为l因为list是内置类型.意外地覆盖它不会很漂亮.
也许创建一个带有选择输出的列表?就像是
choices = [choice(list) for i in range(10)]
Run Code Online (Sandbox Code Playgroud)
你有10个元素?我也会重命名list为别的东西.