【发布时间】:2018-12-16 15:38:20
【问题描述】:
假设我有 5 个变量,A 到 E。
我将它们列在一个列表中,如下所示:
lst = [A, B, C, D, E]
使用 python random 模块,我这样做了:
random.choice(list) = "The Chosen Letter"
但是,我相信您知道,我被“无法分配给函数调用”错误如此粗暴地打了一顿。这不是我要问的,我知道为什么会这样。
我想知道的是,是否确实可以为列表中的随机变量赋值,或者我是否必须编写一个丑陋的解决方法。
对于上下文,它适用于我尝试使用随机生成文本进行编码的动态网格。
【问题讨论】:
-
只使用随机生成的索引?
-
你写的代码不是有效的python语法。如果您的意图是让变量名为
The Chosen Letter包含从列表中随机选择的字母,则必须颠倒顺序:the_chosen_letter = random.choice(list)。看看rvalue vs lvalue,了解为什么顺序很重要。请注意,您不能将"the_chosen_letters"包裹在引号周围,因为这样您就将其变成了字符串,而不是变量(并且字符串应该是右值,而不是左值)。特别是,您的代码永远不会有效