【问题标题】:Python file dialog issuePython文件对话框问题
【发布时间】:2011-08-01 21:24:03
【问题描述】:

我正在尝试使用 Tkinter 选择一个文件,然后将该文件名导入到参数中以传入函数。选择文件后程序会停止。我包含了一个 print 语句,只是为了查看它是否返回路径并且它确实返回了,所以我不确定为什么它在函数中不起作用。

#Main

from Tkinter import *
import tkFileDialog


fileOpen = Tk()
fileOpen.withdraw() #hiding tkinter window

file_path = tkFileDialog.askopenfilename(title="Open file", filetypes=[("txt file",".txt"),("All files",".*")])

if file_path != "":
   print "you chose file with path:", file_path

else:
   print "you didn't open anything!"

master.quit()

print file_path   


spaceParser (file_path,'r','/Users/Desktop/TygerTygerParsed.txt','w')

【问题讨论】:

  • master 没有在你的脚本中定义,所以当它到达master.quit() 时,它会引发:NameError: name 'master' is not defined

标签: python dialog text-files


【解决方案1】:

这个(缩短版)工作得很好:

from Tkinter import *
import tkFileDialog

fileOpen = Tk()
fileOpen.withdraw() #hiding tkinter window

file_path = tkFileDialog.askopenfilename(
    title="Open file", filetypes=[("txt file",".txt"),("All files",".*")])

if file_path != "":
   print "you chose file with path:", file_path

else:
   print "you didn't open anything!"

print file_path   

所以我猜你的程序正在停止

master.quit()

【讨论】:

  • 它工作正常,但它不会将文件名传递给函数
  • 你能告诉我们定义spaceParser的代码吗?如果程序没有在master.quit 上停止,那么问题可能出在spaceParser。您向我们展示的所有其他代码都应该可以正常工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-06-24
  • 2017-05-25
  • 2019-04-24
  • 2011-08-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多