问题:
尝试使用打乱对象列表时可能会发生错误random.shuffle() 函数。预期的洗牌行为似乎没有发生,并且函数输出 None 相反。
解决方案:
要有效地洗牌对象列表,请使用 shuffle( ) 随机模块的函数为如下:
from random import shuffle objects = [obj1, obj2, obj3] # initialize the list of objects shuffle(objects) # shuffle the objects in place
说明:
与其他一些编程语言不同,在 Python 中,random.shuffle() 就地操作,这意味着它会修改原始列表,而不会修改原始列表。返回一个新的。此外,当打算改变对象时,Python 中的函数通常会返回 None。
示例代码:
from random import shuffle x = [[i] for i in range(10)] shuffle(x) print(x)
这将打乱列表 x 的列表并打印打乱后的内容
注意:
重要的是要记住 shuffle() 会更改原始列表,因此后续操作或对列表的访问将反映 shuffle 所做的更改().
以上是为什么 Python 的 random.shuffle() 返回 None 以及如何正确使用它?的详细内容。更多信息请关注PHP中文网其他相关文章!