从random.shuffle(x [,random])的doc中,它说:
可选参数random是一个0参数的函数,返回[0.0,1.0)中的一个随机浮点数;默认情况下,这是函数random()
[有人可以解释一下0-argument function
的含义,并举例说明random.shuffle()
和可选参数random
吗?我搜索了该案例,但找不到任何示例。另外,“这是函数random()
”是什么意思? this
是否引用可选参数?
0参数函数的参数列表为空。
def random_seed(): # Zero arguments here.
return MY_CONFIG.predictble_random_seed
random.shuffle(some_list, random_seed) # Always the same.
这意味着您可以传入不需要参数的函数名称。
def foo()
return 0.5
是这样的功能。
def bar(limit):
return limit
不是,因为它需要参数limit
。
如果未指定任何内容,则默认值为函数random()
。
这是您想要的?
>>> import random
>>> r = random.random()
>>> r
0.4309619702601998
>>> x = [1, 2, 3, 4, 5, 6]
>>> random.shuffle(x, lambda: r)
>>> x
[5, 1, 4, 2, 6, 3]
>>> random.shuffle(x, lambda: r)
>>> x
[6, 5, 2, 1, 3, 4]
>>> x = [1, 2, 3, 4, 5, 6]
>>> random.shuffle(x, lambda: r)
>>> x
[5, 1, 4, 2, 6, 3]