1
我有一个三列的excel文件。我想让第一列成为关键字,然后创建下一列的列表作为值。将一个值附加到字典
然而,.append功能似乎并没有为我工作
d = {}
for index, row in df.iterrows():
d[row[0]] = row[1]
d[row[0]].append(row[2])
AttributeError的:“统一”对象有没有属性“追加”
我有一个三列的excel文件。我想让第一列成为关键字,然后创建下一列的列表作为值。将一个值附加到字典
然而,.append功能似乎并没有为我工作
d = {}
for index, row in df.iterrows():
d[row[0]] = row[1]
d[row[0]].append(row[2])
AttributeError的:“统一”对象有没有属性“追加”
您作为分配对象的unicode字典值,然后尝试在该unicode对象上调用append
。相反,你应该分配初始值作为一个表,如下所示:
d = {}
for index, row in df.iterrows():
d[row[0]] = [row[1]]
d[row[0]].append(row[2])
一个更好的方法是:
d[row[0]] = row[1:]
或者是:
a, *b = row
d[a] = b
工作就像一个魅力。感谢亲的提示,以及帮助我更好地理解 –
其实,d [行[0]] =行[1:]不起作用的原因。它不会选择正在迭代的当前行的第一行,而是选择文件中的第一行。所以输出如下所示:标题值0,标题值1,标题,值2等 –