我试图在python中编写一个线性同余生成器,我在维基百科上找到一小段代码,但在理解它时遇到一些困难.代码如下:
def lcg(modulus, a, c, seed=None):
if seed != None:
lcg.previous = seed
random_number = (lcg.previous * a + c) % modulus
lcg.previous = random_number
return random_number / modulus
lcg.previous = 2222
Run Code Online (Sandbox Code Playgroud)
我的问题是什么是" lcg.previous"?我注意到函数已经完成,lcg.previous更新和存储的值.它是在这里声明为函数lcg()的成员变量还是实际上为python中的所有函数设置了某种默认设置?
非常感谢!