24

私がやりたいことは、tkinter filedialog を使用して複数のファイルを選択し、それらの項目をリストに追加することです。その後、リストを使用して各ファイルを1つずつ処理したいと思います。

#replace.py
import string
def main():
        #import tkFileDialog
        #import re
        #ff = tkFileDialog.askopenfilenames()
        #filez = re.findall('{(.*?)}', ff)
        import Tkinter,tkFileDialog
        root = Tkinter.Tk()
        filez = tkFileDialog.askopenfilenames(parent=root,title='Choose a file')

複数のファイルを選択できるようになりましたが、それらのファイル名をリストに追加する方法がわかりません。何か案は?

4

4 に答える 4

30

askopenfilenamesリストの代わりに文字列を返し、その問題は課題トラッカーでまだ未解決であり、これまでのところ最善の解決策は次を使用することsplitlistです:

import Tkinter,tkFileDialog

root = Tkinter.Tk()
filez = tkFileDialog.askopenfilenames(parent=root, title='Choose a file')
print root.tk.splitlist(filez)

Python 3 の更新:

tkFileDialog名前が変更され、askopenfilenamesタプルを直接返すようになりました:

import tkinter as tk
import tkinter.filedialog as fd

root = tk.Tk()
filez = fd.askopenfilenames(parent=root, title='Choose a file')
于 2013-05-28T12:10:37.507 に答える