Smartsheet数据跟踪器:AttributeError:“dict”对象没有“append”属性

2024-09-27 18:10:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我是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)

Tags: 文件csv数据inselfinit错误数组
2条回答

实际上,这更像是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

不管是哪一个,只需要删除命名冲突,这样两个变量就可以在名称空间中共存。

相关问题 更多 >

    热门问题