如何在其余 Python 代码中使用从 tkinter 导入的文件

How to use file imported from tkinter in rest of Python code

我正在尝试从 tkinter GUI 导入一个文件以用于我的其余代码。

import numpy as np
import tkinter as tk
from tkinter import filedialog

def FileImport():
    file = filedialog.askopenfilename()
    label = tk.Label(root, text = "Selected: "+file).pack()

root= tk.Tk() 
root.title('Main')
label = tk.Label(root, text = "Upload a file: ", fg="purple").pack()
button = tk.Button(root, text='Upload',fg="blue", command=FileImport)
button.pack()
root.mainloop()

uploaded_file = np.fromfile(file) 

然后我尝试对该文件数据执行计算和其他操作。

问题是,当我 运行 GUI 工作的代码 "fine" 时,我可以上传文件,但它告诉我名称 'uploaded_file' 未定义。我想我缺少我的 GUI 和我的其余代码之间的一些联系?有什么建议吗?

加上file=''然后在函数中用global调用就可以解决这个问题。 试试这个:

import numpy as np
import tkinter as tk
from tkinter import filedialog
file = ''

def FileImport():
    global file
    file = filedialog.askopenfilename()
    label = tk.Label(root, text = "Selected: "+file).pack()

root= tk.Tk()
root.title('Main')
label = tk.Label(root, text = "Upload a file: ", fg="purple").pack()
button = tk.Button(root, text='Upload',fg="blue", command=FileImport)
button.pack()

root.mainloop()
uploaded_file = np.fromfile(file)
print(uploaded_file)

希望对您有所帮助!