随机随机列表变为无

时间:2015-10-16 15:03:20

标签: python nonetype

import random

a = [1,2,3,4,5,6,7,8,9]
# random.shuffle(a) # this is fine
a = random.shuffle(a) # a is now None

我在我的代码中输入了一个拼写错误,但在这种情况下我想知道为什么变成无。引擎盖下发生了什么?

1 个答案:

答案 0 :(得分:5)

random.shuffle就地工作,它不会返回任何内容(因此默认情况下会返回None,因为所有Python函数调用都应该返回一些值),因此当你这样做时 - {{1 },a = random.shuffle(a)变为无。试试 -

a

来自random.shuffle(a) -

的文档
  

<强> random.shuffle

     

将序列x随机移动。可选参数random是一个0参数函数,在[0.0,1.0)中返回随机浮点数;默认情况下,这是函数random()

(强调我的)