我想知道 shuffle() 和 choice() 哪个更有效率。 例如,我有一个 N 元素列表 long_list 并且需要列表中的随机项目,这样做是否更快:
shuffle(long_list)
return long_list[0]
或
return choice(long_list)
请您参考如下方法:
random.choice() 总是会更快,因为它在常数时间 O(1) 内进行查找
random.shuffle() 需要迭代整个序列来执行随机播放,这将是 O(n),然后您的查找是常数时间 O(1)
