首页 > 解决方案 > 在 python 的多个函数中使用相同的数据框名称

问题描述

我有两个要导入的 excel 文件;文件 1.xls 和文件 2.xls。我已经定义了两个单独的函数来导入和第三个函数来合并这些文件。但是,合并没有发生。错误正在显示

NameError: Name 'File1' is not defined.

我正在使用下面的代码。请帮忙。

from tkinter import messagebox, filedialog, Frame, Button, Tk, Menu
import pandas as pd

def importivl():
    global File1
    LI_Filepath = filedialog.askopenfilename()
    File1 = pd.read_excel(LI_Filepath)
    messagebox.showinfo("File1", "File Imported Successfully")

def importcatfile():
    global File2
    Cat_Filepath = filedialog.askopenfilename()
    File2 = pd.read_excel(Cat_Filepath)
    messagebox.showinfo("File2", "File Imported Successfully")

def mergeivlcat():
    File1 = pd.merge(File1, File2, on = "ID", how = "left")

def phase_one():
    frame = Frame(root)
    frame.pack()
    import_LI_File = Button(root, text = "Import File1", command = importivl).pack()
    import_Category_File = Button(root, text = "Import File2", command = importcatfile).pack()
    mergeivlcat()

root = Tk()
root.geometry("600x400")

menubar = Menu(root)
filemenu = Menu(menubar, tearoff = 0)
filemenu.add_command(label = "Phase One", command = phase_one)
filemenu.add_separator()
filemenu.add_command(label = "Exit", command = root.destroy)
menubar.add_cascade(label = "File", menu = filemenu)

root.config(menu = menubar)
root.mainloop()

标签: pythonpython-3.x

解决方案


推荐阅读