Python ';int';对象在创建字典时不可编辑
我正在尝试用python创建一个字典。但是,我想使用随机值创建字典。所需输出的格式应为{a':1,'b':2}Python ';int';对象在创建字典时不可编辑,python,pandas,numpy,dictionary,random,Python,Pandas,Numpy,Dictionary,Random,我正在尝试用python创建一个字典。但是,我想使用随机值创建字典。所需输出的格式应为{a':1,'b':2} import numpy as np import pandas as pd import random import string value = np.random.random(10) np.random.seed(42) key = list(np.random.choice(list(string.ascii_lowercase), 10)) key, value def
import numpy as np
import pandas as pd
import random
import string
value = np.random.random(10)
np.random.seed(42)
key = list(np.random.choice(list(string.ascii_lowercase), 10))
key, value
def map_values(key, value):
i = len(key)
j = len(value)
for i in len(key):
print('key[i]' +'value[j]')
i = i+1
j = j+1
return map_values()
map_values(key, value)
但是,在运行上述代码时,我发现错误“int”对象不可编辑。有人能解释错误的原因并纠正代码吗?因为我是python新手,正在尝试学习它。您的代码有几个错误:
范围(len(key))
,而不是整数len(key)
map\u values()
,但不需要递归算法键
和值
数组的长度,然后在for循环中重新分配它们键
和值
数组中提取元素dict
+zip
:
np.random.seed(42)
key = np.random.choice(list(string.ascii_lowercase), 10)
value = np.random.random(10)
res = dict(zip(key, value))
{'g': 0.83244264080042174,
'h': 0.020584494295802447,
'k': 0.70807257779604549,
'o': 0.6011150117432088,
's': 0.18182496720710062,
't': 0.86617614577493518,
'u': 0.96990985216199432,
'w': 0.18340450985343382,
'z': 0.21233911067827616}
fori-in-len(key):
应该是fori-in-range(len(key)):
或者xrange(len(key))
如果你在python 2.infori-in-len(key):
,len(key)
返回一个int
,然后你尝试使用for循环迭代它,因此出现了错误。您可以为所需的输出指定已纠正的代码吗?