使用Pandas编写load_data函数时遭遇AttributeError问题求助
问题解决
错误根源
你的load_data函数犯了两个关键错误:
- 调用
pd.read_csv读取文件后,没把结果存到变量里,等于白读了 - 函数最后返回的是整数
0,不是读取出来的DataFrame对象
所以df = load_data()得到的是个整数,自然没有info()方法,触发AttributeError。
修正后的代码
import numpy as np import pandas as pd from io import StringIO def load_data(): # 把读取结果赋值给df df = pd.read_csv('work.csv', sep=';', encoding="utf-8") # 返回DataFrame而非0 return df df = load_data() # 直接调用info(),它本身会打印数据结构信息 df.info()
额外提示
pd.read_csv的分隔符建议显式写sep=';',比直接传';'更清晰,避免参数顺序混乱- 如果后续需要把
info()的输出存成字符串,再用你注释里的StringIO逻辑就行:buffer = StringIO() df.info(buf=buffer) info_content = buffer.getvalue() # 此时info_content就是info()的文本内容
内容的提问来源于stack exchange,提问作者Lynn
相关产品推荐
相关产品推荐

