我是Python新手,我正在使用Smartsheet数据跟踪器从CSV文件更新工作表。
我对Python中的数组列表管理有问题;我不知道这个错误,我在StackOverflow上读到这个错误,但是我不理解它:
错误:
"File "C:\Users\David\DataTraker\connectors\CSVCon.py", line 61, in __init__
self.csvData.append(readerRow)
AttributeError: 'dict' object has no attribute 'append'"
我的代码是:
def __init__(self, sourceConfig):
self.csvData = []
self.csvData = {"sourceId": "siniestros",
"connectorClassName": "CSVCon",
"fileName": "siniestros.csv",
"isStrict": False}
for readerRow in sourceReader:
self.csvData.append(readerRow)
实际上,这更像是Data Tracker项目中注释不正确的代码问题,导致了CSVCon.py文件中的混乱。这些注释中的CSV配置设置是
settings/sources.json
文件中应该包含的内容的一个示例。项目文档中的Configure Source部分提供了有关在sources.json文件中设置源代码的更多详细信息。
这里还有一个section,具体解释了CSV source。
令人困惑的评论已经更新,以便更加清楚。
出了问题的是,您创建了一个
list
,您希望稍后再append
。但是,之后您可以用字典覆盖它,而不能将其附加到字典中。这就是为什么你得到一个AttributeError
。为了解决这个问题,我将把您在
list
之后创建的字典(self.csvData={stuff}
)重命名为其他的东西,比如self.meta
。或者,您可以重命名您的list
。不管是哪一个,只需要删除命名冲突,这样两个变量就可以在名称空间中共存。
相关问题 更多 >
编程相关推荐