出现AttributeError错误的原因之一,是因为函数的名称于系统原有名称产生了冲突,修改一下函数名称即可。
原代码如下:
#!/usr/bin/env python
# coding=utf-8
import codecs
import csv
def csv(storage):
csv_storage = []
with codecs.open(storage, 'r', encoding='utf-8') as fp:
fp_key = csv.reader(fp)
for csv_key in fp_key:
csv_reader = csv.DictReader(fp, fieldnames=csv_key)
for row in csv_reader:
csv_dict = dict(row)
csv_storage.append(csv_dict)
print(len(csv_storage))
if __name__ == '__main__':
csv('test.csv')
出现了这样的一个错误提示
排查了好久,原来问题出在函数名称上面,修改过来即可
def csv(storage):
修改完成后的代码块:
def csv_new(storage):
csv_storage = []
with codecs.open(storage, 'r', encoding='utf-8') as fp:
fp_key = csv.reader(fp)
for csv_key in fp_key:
csv_reader = csv.DictReader(fp, fieldnames=csv_key)
for row in csv_reader:
csv_dict = dict(row)
csv_storage.append(csv_dict)
print(len(csv_storage))
if __name__ == '__main__':
csv_new('test.csv')
希望能够帮助大家解决‘function’报错的问题?