分配键并存储在Python字典中



对于掷出六面骰子的事件。我需要随机模拟事件1000次,并绘制骰子上每个数字的结果直方图。我想将每个数字的结果分配给具有相同值的键(1表示1个数{1:164…})。

我需要帮助分配键并将所有内容存储在字典中

import random
test_data = [0, 0, 0, 0, 0, 0] #this will keep track of the results
n = 1000 # number of simulations


for i in range(n):
result = random.randint(1, 6)
test_data[result - 1] = test_data[result - 1] + 1

for i in range(len(test_data)):
print ("Number of ", i+1, "'s: ", test_data[i])
dic = dict()
for i in range(len(test_data)):
dic[i+1] = test_data[i]

您可以声明一个键为1-6的字典,然后为每个键增加值。详细信息可在Python字典文档中找到。

要声明一个键为1-6的字典,可以创建一个键和值对硬编码的字典,如:

test_data = {1:0, 2:0, 3:0, 4:0, 5:0, 6:0}

或者你可以使用(感谢@deadshot):

test_data = dict.fromkeys(range(1, 7), 0)

代码:

import random

test_data = dict.fromkeys(range(1, 7), 0)
#test_data = {1:0, 2:0, 3:0, 4:0, 5:0, 6:0}
n = 1000 # number of simulations
for i in range(n):
result = random.randint(1, 6)
test_data[result] = test_data[result] + 1

for i in test_data:
print ("Number of "+str(i)+"'s: "+str(test_data[i]))

输出:

Number of 1's: 178
Number of 2's: 172
Number of 3's: 150
Number of 4's: 166
Number of 5's: 160
Number of 6's: 174

引用:

  • Python dictionary文档

相关内容

  • 没有找到相关文章

最新更新