Python 3.x 为什么我的脚本返回;属性错误:';str';对象没有属性';附加';?

Python 3.x 为什么我的脚本返回;属性错误:';str';对象没有属性';附加';?,python-3.x,Python 3.x,我试图通过利润除以收入来获得每个项目的盈利能力。 代码正在运行,我得到了值 我只需要最后一部分(分割部分)的帮助。这就是我遇到的一些问题 这是我的密码 我得到的结果是 AttributeError:“str”对象没有属性“append” from observations.constants import PROJECTS_DB_ID from datetime import datetime from dateutil.relativedelta import relativedelta d

我试图通过利润除以收入来获得每个项目的盈利能力。 代码正在运行,我得到了值

我只需要最后一部分(分割部分)的帮助。这就是我遇到的一些问题

这是我的密码

我得到的结果是

AttributeError:“str”对象没有属性“append”

from observations.constants import PROJECTS_DB_ID
from datetime import datetime
from dateutil.relativedelta import relativedelta

def get(gs_client):
    #Sheet access
    sheet = gs_client.open_by_key(
        PROJECTS_DB_ID).worksheet('Finance')

    #Columns necessary
    projects = sheet.col_values(1)[2:]
    months = sheet.col_values(2)[2:]
    profit = sheet.col_values(11)[2:]
    revenue = sheet.col_values(6)[2:]
    last_modified = sheet.col_values(13)[2:]

    #Lists
    list_projects = []
    list_months = []
    list_profit = []
    list_revenue = []
    list_last_modified = []
    value = []

    #Gets each project
    for project in projects:
        list_projects.append(project)

    #Gets each month
    for month in months:
        list_months.append(month)

    #Gets each value of profit column
    for val in profit:
        list_profit.append(val.strip('$').replace(',',''))

    #Gets each value in revenue column
    for value in revenue:
        list_revenue.append(value.strip('$').replace(',',''))

    #Gets each date in last modified column
    for update in last_modified:
        list_last_modified.append(update)

    #Get profitability per project (profit divided by revenue)
    for x in range(len(projects)):
        value1 = float(list_profit[x])/float(list_revenue[x])
        value.append(value1)

    print(value)

任何帮助都将不胜感激

您的错误是由于变量
value
,您将其用作列表和字符串

#列表
列出项目=[]
列出月份=[]
列出利润=[]
列表_收入=[]
列表\u上次\u修改=[]
值=[]
#获取每个项目
对于项目中的项目:
列出项目。追加(项目)
#每月收到
月份中的月份:
列出月份。追加(月份)
#获取利润列的每个值
利润中的val:
列表_利润.追加(val.strip('$).replace(',','')
#获取收入列中的每个值
对于收入中的val:#此处,将值更改为val
列表_revenue.append(val.strip(“$”).replace(“,”,”)
#获取上次修改列中的每个日期
对于上次修改中的更新:
列表\u上次\u修改。追加(更新)
#获得每个项目的盈利能力(利润除以收入)
对于范围内的x(len(项目)):
值1=浮动(列出利润[x])/浮动(列出收入[x])
value.append(value1)

在python中,每当您在somthing中使用
for i时,i不是for循环中的局部变量,就像在其他语言中一样,i的值是循环中i的最后一个值,也可以在循环结束后访问。在python中使用变量名时必须非常小心

您的错误是由于变量
value
,您将其用作列表和字符串

#列表
列出项目=[]
列出月份=[]
列出利润=[]
列表_收入=[]
列表\u上次\u修改=[]
值=[]
#获取每个项目
对于项目中的项目:
列出项目。追加(项目)
#每月收到
月份中的月份:
列出月份。追加(月份)
#获取利润列的每个值
利润中的val:
列表_利润.追加(val.strip('$).replace(',','')
#获取收入列中的每个值
对于收入中的val:#此处,将值更改为val
列表_revenue.append(val.strip(“$”).replace(“,”,”)
#获取上次修改列中的每个日期
对于上次修改中的更新:
列表\u上次\u修改。追加(更新)
#获得每个项目的盈利能力(利润除以收入)
对于范围内的x(len(项目)):
值1=浮动(列出利润[x])/浮动(列出收入[x])
value.append(value1)

在python中,每当您在somthing中使用
for i时,i不是for循环中的局部变量,就像在其他语言中一样,i的值是循环中i的最后一个值,也可以在循环结束后访问。在python中使用变量名时必须非常小心

哪个特定的附加失败了?你有一些…你能分享错误发生在哪一行吗?请包括完整的回溯。您还应该阅读将问题简化为a的指南。在第四个
for
循环中,您正在将
值的类型从
列表更改为
str
。错误在第45行哪个附加失败?你有一些…你能分享错误发生在哪一行吗?请包括完整的回溯。您还应该阅读将问题简化为a的指南。在您的第四个
for
循环中,您正在将
值的类型从
列表更改为
str
。错误在第45行。此操作有效,非常感谢。下次会格外小心。尽量保留更多描述性变量名,以免意外覆盖它们。这很有效,非常感谢。下次将格外小心。请尽量保留更多描述性变量名,以免意外覆盖它们。