如何将函数参数存入Excel?解决'int'无'to_excel'属性错误
解决整数参数n写入Excel的问题
为什么直接调用n.to_excel()会报错
to_excel()是pandas库中DataFrame或Series对象的专属方法,整数(int)本身没有这个属性,直接调用必然抛出AttributeError。
正确写入整数n到Excel的方法
方法1:用pandas Series存储
把整数n包装成Series对象,再调用to_excel():
import pandas as pd def test(alpha,a,x,y,n): # 将n存入Series,指定列名 pd.Series([n], name='n').to_excel('n.xlsx', index=False)
index=False:避免在Excel中生成多余的索引列name='n':设置Excel中的列标题
方法2:用pandas DataFrame存储
如果需要更灵活的表格结构(比如后续添加更多数据),可以用DataFrame:
直接初始化带数据的DataFrame
import pandas as pd def test(alpha,a,x,y,n): df = pd.DataFrame({'n': [n]}) df.to_excel('n.xlsx', index=False)
先创建空DataFrame再添加数据(解决你之前空DataFrame无值的问题)
你之前创建空DataFrame后写入无值,是因为没有正确添加行数据。正确写法:
import pandas as pd def test(alpha,a,x,y,n): df = pd.DataFrame(columns=['n']) # 创建带列名的空DataFrame df.loc[0] = n # 指定行号添加数据 df.to_excel('n.xlsx', index=False)
如果直接给空DataFrame的列赋值单个整数,pandas无法匹配行数(空DataFrame行数为0),所以不会写入任何数据;用loc[0] = n是明确指定行号添加数据,就能正常写入。
方法3:不用pandas,用openpyxl直接写入(可选)
如果不想依赖pandas,也可以用openpyxl直接操作Excel单元格:
from openpyxl import Workbook def test(alpha,a,x,y,n): wb = Workbook() ws = wb.active ws['A1'] = n # 将n写入A1单元格 wb.save('n.xlsx')
内容的提问来源于stack exchange,提问作者John278
相关产品推荐
相关产品推荐

