Я новичок на сайте и новичок в python (и в общем кодировании), так голый со мной :) Я ищу, чтобы взять путь к файлу, который захвачен, когда пользователь выбирает файл с помощью tkFileDialog и передает его другому скрипту, который может открыть этот файл и выполнить другой скрипт. Конечная цель здесь - выбрать два xml-файла и сравнить их. Внешний скрипт будет активирован кнопкой подтверждения и выведет любые различия между двумя файлами в текстовом фрейме.Как передать переменную класса из одного скрипта в другой
import Tkinter
import tkFileDialog
from Tkinter import *
from tkFileDialog import *
class GUI:
def __init__(self, master):
self.master = master
path1 = StringVar()
path2 = StringVar()
master.title("XML Compare Tool")
master.geometry('700x300')
self.bb1 = Button(master, text="Browse", command=lambda: path1.set(tkFileDialog.askopenfilename()))
self.bb1.grid(row=0, column=0, padx=5, pady=5)
self.bb2 = Button(master, text="Browse", command=lambda: path2.set(tkFileDialog.askopenfilename()))
self.bb2.grid(row=1, column=0, padx=5, pady=5)
self.confirm = Button(master, text="Confirm", command='')
self.confirm.grid(row=3, column=1, padx=5, pady=5, sticky='')
self.entry1 = Entry(master, width=75, textvariable=path1)
self.entry1.grid(row=0, column=1, columnspan=2, sticky=W)
self.entry2 = Entry(master, width=75, textvariable=path2)
self.entry2.grid(row=1, column=1, sticky=W)
self.t_label = Label(master, text="Script Output")
self.t_label.grid(row=4, column=1, columnspan=1, sticky='')
self.t_frame = Frame(master, bg="white", height=150, width=600)
#self.t_frame.place(x=25, y=120, height=250, width=690)
self.t_frame.grid(row=5, column=1, columnspan=1, sticky='')
self.t_text = Text(self.t_frame)
#self.t_text.pack(expand=True, fill='both')
root = Tk()
my_gui = GUI(root)
root.mainloop()
Поскольку вы только учитесь, я рекомендую избегать «лямбды», если это действительно необходимо. Ваши кнопки должны вызывать соответствующие функции/методы. Это значительно упрощает кодирование, особенно если вы сейчас учитесь программировать. –
, если внешний скрипт является скриптом python, и он имеет код, организованный в функции, тогда вы можете импортировать этот скрипт и функцию вызова. – furas