【发布时间】:2019-04-17 12:49:43
【问题描述】:
TypeError:字符串索引必须是整数。 例如:20 适用但不适用 3550。
i=0
for key in dict1:
for keys in dict2:
if (dict1[key]['TITLE']==dict2[keys]['TITLE']):
if pd.isna(d1.loc[i,'DB']) is True:
d1.iloc[i]=dict2[keys]
i+=1
dict1 和 2 看起来像:
{'DB': 'A',
'TITLE': 'Wildlife Biology',
'ISSN': '0909-6396',
'e-ISSN': nan,
'ISBN': nan,
'e-ISBN': nan}
当key=20时为dict1[key]
运行时弹出错误。
if (dict1[key]['TITLE']==dict2[keys]['TITLE']):
TypeError: string indices must be integers
【问题讨论】:
-
i来自哪里? -
i 是count1,也是一个3500+的整数。
-
什么是
len(dictN) -
dict1 是字典列表吗?还是字典本身?
-
@CharlesLandaulen(dict1) 是 3680,len(dict2) 是 3817
标签: python pandas dataframe dictionary