как я могу получить путь от askfilename для другой функции - PullRequest
0 голосов
/ 16 октября 2019

Я не уверен, как получить путь к файлу для выполнения функции year, я искал в Интернете, но все, что я нашел, это статический путь, где мой требует выбрать файл, используя askopenfilename

def file1():
    path1 = askopenfilename(initialdir="/desktop/songs", title="select file")
    path_lbl = Label(topframe, text="file path : " + path1).grid(row=0, column=1)
    return path1

def year(x):
   data = pd.read_csv(x)
   for col in data.columns:
       if "year" in col.lower():
           year = list(data[col])
           year.sort(reverse=True)
           rangeyr = year[0] - year[-1]
           print rangeyr
       else:
           print "there is no data for year"
print data

base = Tk()
base.geometry("500x250")
base.title("data reader")

Button(topframe, text="add path", command=file1).grid(row=0, column=0)

Button(bottomframe, text="confirm", command=year(path1)).grid(row=10, column=3)

base.mainloop()

1 Ответ

0 голосов
/ 16 октября 2019

Используйте переменную tkinter StringVar для хранения вашего пути:

from Tkinter import *

def file1():
    path1 = askopenfilename(title="select file")
    Label(base, textvariable=v).grid(row=0, column=1)
    v.set("file path : " + path1)

def year():
    print v.get()[12:]
    #data = pd.read_csv(v.get()[12:])...

base = Tk()
v = StringVar()
base.geometry("500x250")
base.title("data reader")

Button(base, text="add path", command=file1).grid(row=0, column=0)

Button(base, text="confirm", command=year).grid(row=1, column=0)

base.mainloop()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...