我正在尋找一種跨平臺的方式,通過實現拖放n拖放方法來使我的Python腳本處理文件的路徑。目前,我手動去到終端,並使用sys.argv
方法:拖放文件到Python腳本
python myscript.py /Python/myfile.xls
然而,這是緩慢的,「易怒」。理想情況下,我會採用一種快速且交互式的方式讓文件由我的Python腳本進行處理。我主要需要這個爲Mac工作,但跨平臺會更好。
我正在尋找一種跨平臺的方式,通過實現拖放n拖放方法來使我的Python腳本處理文件的路徑。目前,我手動去到終端,並使用sys.argv
方法:拖放文件到Python腳本
python myscript.py /Python/myfile.xls
然而,這是緩慢的,「易怒」。理想情況下,我會採用一種快速且交互式的方式讓文件由我的Python腳本進行處理。我主要需要這個爲Mac工作,但跨平臺會更好。
用Tkinter或類似的東西編寫一個小GUI是最容易的,並讓用戶從GUI中選擇一個文件。沿着這些路線的東西:
import tkFileDialog
f = tkFileDialog.askopenfilename()
# Go on from there; f is a handle to the file that the user picked
我不知道任何跨平臺的方法來得到一個腳本拖放到工作,但是。雖然這可能更容易。
是否要將myfile.xls拖放到文件導航器中的python腳本中?說Finder或Mac上的任何東西,勝利的Explorer,Nautilus等?在這種情況下,將不會有一個簡單的跨平臺解決方案,因爲您將不得不掛鉤到不同系統上的不同軟件。
對於Mac具體的解決方案嘗試AppleScript的 - 這裏是一個sample
而對於一些Python的有http://appscript.sourceforge.net/,http://docs.python.org/library/macosa.html
否則,解決辦法是在上面的答案。使用Tk或wx或QT內置的自定義GUI。你可以查看他們各自的文檔進行拖放,他們確實有跨平臺的方式來做到這一點。
2011年,你真的需要在蘋果電腦上使用AppleScript嗎? Windows安裝會自動設置它 - 丟棄的文件被提供給'argv'。 –
如果你想使用Tkinter的,有看的Tkinter的DnD從這裏http://klappnase.bubble.org/TkinterDnD/index.html
結合運行時,結合顯示了一個列表框,允許你拖上給它一個文件的例子。
你有這個綁定嗎?它不再可用。另外,看到這個問題http://stackoverflow.com/questions/14267900/python-drag-and-drop-explorer-files-to-tkinter-entry-widget關於這個同樣的問題一個新的問題。 – mmgp
@mmgp您可以使用WayBack獲取zip(http://web.archive.org/web/20120104000747/http://klappnase.bubble.org/download/TkinterDnD-0.4.zip) –
這不是所要求的答案。 – Kobor42