You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python报错TypeError: 'str'对象不可调用,求定位解决

问题求助:TypeError: 'str' object is not callable 解决方法

我刚开始学习编程,谷歌搜索后以为问题是和Python预定义名称冲突的变量需要重命名,但找不到对应的变量。以下是我的代码和报错信息,试过重命名文件、路径前加'r'/'f'、路径末尾加{file}等方法都没用,求帮忙:

我的代码

import os
import pandas as pd

lista_arquivo = os.listdir(fr"C:\Users\Master\Desktop\cursos\projetos\PYTHON\Faturamento_AM")

print(lista_arquivo)

tabela_total = pd.DataFrame()

for arquivo in lista_arquivo:
    
    if "abril.xlsx" in arquivo():
               
        tabela = pd.read_excel(fr"C:\Users\Master\Desktop\cursos\projetos\PYTHON\Faturamento_AM\{arquivo}")
        tabela_total = tabela_total.append(tabela)
        print(arquivo)

        print(tabela_total)

tabela_faturamento = tabela_total.groupby('Faturamento').sum()
print(tabela_faturamento)

报错信息

TypeError: 'str' object is not callable

解决方案

你的问题和预定义名称冲突无关,是代码里的语法错误:

  • 循环里的arquivo()是错误写法,arquivo是字符串类型的文件名,不需要加括号调用。把if "abril.xlsx" in arquivo()改成if "abril.xlsx" in arquivo即可。

另外补充两个实用提示:

  • pd.DataFrame.append()已被官方弃用,建议用pd.concat([tabela_total, tabela], ignore_index=True)替代,避免后续Python版本升级后报错。
  • 路径拼接更推荐用os.path.join(),比如os.path.join(r"C:\Users\Master\Desktop\cursos\projetos\PYTHON\Faturamento_AM", arquivo),写法更规范且跨系统兼容性更好。

修改后的代码示例:

import os
import pandas as pd

caminho_pasta = r"C:\Users\Master\Desktop\cursos\projetos\PYTHON\Faturamento_AM"
lista_arquivo = os.listdir(caminho_pasta)

print(lista_arquivo)

tabela_total = pd.DataFrame()

for arquivo in lista_arquivo:
    if "abril.xlsx" in arquivo:
        caminho_arquivo = os.path.join(caminho_pasta, arquivo)
        tabela = pd.read_excel(caminho_arquivo)
        tabela_total = pd.concat([tabela_total, tabela], ignore_index=True)
        print(arquivo)
        print(tabela_total)

tabela_faturamento = tabela_total.groupby('Faturamento').sum()
print(tabela_faturamento)

内容的提问来源于stack exchange,提问作者Alyssa Moreira

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 05:50:26