我很难弄清楚下面的代码是如何工作的:
import random
for i in range(0, 100):
if not i % 15:
random.seed(1178741599)
print [i+1, "Fizz", "Buzz", "FizzBuzz"][random.randint(0,3)]
我知道当i被 , 整除时15,random将使用相同的索引,seed因此randint(0, 3)将始终返回相同的索引,但是当我尝试
for i in range(100):
random.seed(1178741599)
print random.randint(0,3) #always print 0
上面的代码总是打印0,不应该是(这是正确的行为,并且对应3(作为"FizzBuzz"列表中的索引[i+1, "Fizz", "Buzz", "FizzBuzz"]吗?i+1于列表中。)
什么时候i可以被3or整除5呢?
种子有什么魔力1178741599?
编辑:正如 jonrsharpe 指出的,fizzbuzz 代码仅适用于 python 2.x