首页 > 解决方案 > 无法从 Tkinter 拉取上传加载的数据

问题描述

无法拉取使用 Tkinter 上传的数据框

from tkinter import*
import pandas as pd
from tkinter import filedialog
a = Tk()
def mfileopen():
    file1 = filedialog.askopenfilename()
    label1 = Label(text=file1).pack()
    df = pd.read_excel(file1)
    print(df.head())
button = Button(text = 'UPLOAD FILE AND WAIT', width = 30, command = mfileopen).pack()
a.mainloop()

试图拉取上传的数据

df.head()

NameError:名称“df”未定义

标签: python-3.xtkinter

解决方案


您收到错误是因为 df 是一个局部变量,您必须在方法范围之外访问它。你想使用全局变量

df = pd.DataFrame() 
def mfileopen():
    global df
    file1 = filedialog.askopenfilename()
    label1 = Label(text=file1).pack()
    df = pd.read_excel(file1)

print(df.head())

推荐阅读