与Tkinter合作

时间:2016-02-19 01:33:16

标签: python python-2.7 tkinter

我对python完全不熟悉,所以我的问题可能看起来很愚蠢。 基本上我需要让用户确定一个工作目录,在该地址中创建一个文件夹,然后运行其余的脚本。 我知道如何获取目录,但我不知道如何在我的脚本中使用它。

import Tkinter, tkFileDialog
root = Tkinter.Tk()
root.withdraw()
directory= tkFileDialog.askdirectory()

我需要在该地址中创建一个文件夹,所以我试试这个:

os.mkdir (directory/map)

但是我收到了错误消息:

Traceback (most recent call last):
  File "C:\Users\Desktop\run_aermap_script_c - train.py", line 39, in <module>
    os.mkdir (directory/map_C)
NameError: name 'map_C' is not defined

任何帮助将不胜感激。 最好,

2 个答案:

答案 0 :(得分:0)

当Python无法将X作为变量名称时,会发生NameError: name X is not defined。因此,它告诉您Python正在寻找名为X的变量。但是,您不能将X定义为变量(至少在您发布的代码中)。您希望X成为路径名的一部分,路径名应该是一个字符串。我建议您阅读Python字符串行为以及如何从较短的字符串构建更长的字符串。

答案 1 :(得分:0)

askdirectory()返回现有目录的完整路径。如果要在该现有目录中创建名为&#39; map-C`的新目录/文件夹,请使用

os.mkdir(os.path.join(directory, 'map-C'))

&#34;如果目录已存在,则引发OSError。&#34; (mkdir doc