2017-10-04 6 views
1

私は非常に新しいコーディングです。さまざまなことを試しましたが、私のために。ボタンを押してファイルを選択し、そのファイルから特定の値を出力するプログラムを作成しようとしています

ここに私のコードです。このコードでは、これまでのところすべてが正しく動作していますが、コードにread関数を実装する方法がわかりません。私の主な問題は、誰もが読んでいる例では正確なファイル名を使用していますが、生の入力を使う必要があるということです。

編集:open(filename、 "r")を使用して、これを自分で解決することができました。その特定のファイルだけを開く "6543.txt"を持つ代わりに。

from tkinter import Tk 
from tkinter import * 
from tkinter.filedialog import askopenfilename 

root = Tk() 
root.title("Amazon Error Handler") 
root.geometry("300x150") 

frame = Frame(root) 
frame.pack() 
bottomframe = Frame(root) 
bottomframe.pack(side = BOTTOM) 
def getfile(): 
    filename = askopenfilename() 
    print(filename) 
    getfile = open(filename,"r") 
    print(getfile.read(1)) 
    print(getfile.read()) 
button = Button(frame, text="Choose File", fg="black", command=getfile) 
button.pack(side = BOTTOM) 

root.mainloop() 
+0

@JonathanPorter @JonathanPorter申し訳ありませんが、十分な情報を提供していません。 – JMcShea

+0

@ JonathanPorterそれはテキストファイルであり、それらはすべて別の名前として保存されます。 6543、6544、6545などのように、私は他の人たちがこの例のようなファイル名を使った例を読んだことに気付いていますが、私の場合、私はそれをユーザ入力にする必要があります。仕事をする。 – JMcShea

+0

@JonathanPorter私は「ファイル選択」ボタンを押してファイルを印刷するようにしましたが、「6604570358017437.txt」というファイルしか印刷されないので、進捗状況を表示しましたが、まだ必要です私が選んだファイルを印刷します。 – JMcShea

答えて

0

これは自分の問題を解決するために使用したコードです。このプログラムは、選択したファイルを読み込んでその内容を印刷するボタンです。

from tkinter import Tk 
from tkinter import * 
from tkinter.filedialog import askopenfilename 

root = Tk() 
root.title("Amazon Error Handler") 
root.geometry("300x150") 

frame = Frame(root) 
frame.pack() 
bottomframe = Frame(root) 
bottomframe.pack(side = BOTTOM) 
def getfile(): 
    filename = askopenfilename() 
    print(filename) 
    getfile = open(filename,"r") 
    print(getfile.read(1)) 
    print(getfile.read()) 
button = Button(frame, text="Choose File", fg="black", command=getfile) 
button.pack(side = BOTTOM) 

root.mainloop()