我有一个三列的excel文件。我希望第一列成为键,然后创建接下来两列的列表作为值。
然而,.append功能似乎并不适合我
d = {}
for index, row in df.iterrows():
d[row[0]] = row[1]
d[row[0]].append(row[2])
AttributeError:' unicode'对象没有属性'追加'
答案 0 :(得分:2)
您正在将unicode对象指定为dict值,然后尝试在该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