【发布时间】:2014-05-15 18:40:56
【问题描述】:
我正在尝试运行一个简单的程序,在该程序中我试图在循环中运行random.randint() 以更新字典值,但它似乎工作不正确。它似乎总是产生相同的价值。
到目前为止的程序如下。我正在尝试创建一个均匀分布的人口,但我不确定为什么这不起作用。
import random
__author__ = 'navin'
namelist={
"person1":{"age":23,"region":1},
"person2":{"age":24,"region":2},
"person3":{"age":25,"region":0}
}
def testfunction():
default_val={"age":23,"region":1}
for i in xrange(100):
namelist[i]=default_val
for index in namelist:
x = random.randint(0, 2)
namelist[index]['region']=x
print namelist
if __name__ == "__main__" :
testfunction()
我预计这 103 人大致均匀分布在区域 0-2 中,但我将每个人都放在区域 0 中。
知道为什么会这样吗?我是否错误地使用了randint?
【问题讨论】:
标签: python random dictionary