【发布时间】:2015-08-20 20:35:18
【问题描述】:
我正在使用字典在其中添加键和值。我正在检查密钥是否已经存在,如果是,我正在附加值;如果没有,我添加一个键和相应的值。
我收到错误消息:
AttributeError: 'str' 对象没有属性 'append'
这里是代码。我正在阅读一个 CSV 文件:
metastore_dir = collections.defaultdict(list)
with open(local_registry_file_path + data_ext_dt + "_metastore_metadata.csv",'rb') as metastore_metadata:
for line in metastore_metadata:
key = line[2]
key = key.lower().strip()
if (key in metastore_dir):
metastore_dir[key].append(line[0])
else:
metastore_dir[key] = line[0]
我找到了关于堆栈溢出的答案,它说使用 defaultdict 来解决问题,即使在建议的答案之后我也会收到错误消息。 我已经粘贴了我的代码以供参考。
【问题讨论】:
-
你应该使用
defaultdict。 -
我正在使用 defaultdict,但仍然出现错误,请检查我的代码一次。
标签: python python-2.7 csv