繁体   English   中英

定义 function 打开 Excel 文件 (openpyxl) 并保存为 DataFrame

[英]Defining function to open an Excel file (openpyxl) and save as a DataFrame

我有一个典型的方法,用于将数据从 Excel 文件中提取到 DataFrame 中:

import pandas as pd
import openpyxl as op

path = r'thisisafilepath\filename.xlsx'
book = op.load_workbook(filename=path, data_only=True)
tab = book['sheetname']
data = tab.values
columns = next(data)[0:]
df = pd.DataFrame(data, columns=columns)

我试图将此方法定义为 function 以使代码更简单/更具可读性。

我尝试了以下方法:

def openthis(path, sheet):
    book = op.load_workbook(filename=path, data_only=True)
    tab = book[sheet]
    data = tab.values
    columns = next(data)[0:]
    df = pd.DataFrame(data, columns=columns)
    return df

然后当我调用 openthis() 时,output 是我控制台中 DataFrame 的打印版本,但实际上并没有为我创建任何变量来使用。

我错过了什么? 另外,有没有办法定义 DataFrame 变量在生成时被调用的内容?

您没有显示调用它的实际实现,但我猜您没有将 output 分配给变量。

请注意您的 function return df

该语句意味着当您调用 openthis() 时,它会输出一个变量。 除非您将 output 分配给局部变量,否则它将永远消失。

尝试这个

df = openthis(some_arguments)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM