有没有一种方法可以使用浏览功能来设置输入文件,而不是给脚本一个参数

时间:2019-07-03 16:04:31

标签: python-3.x args

我有一个需要2个参数的工作脚本,一个输入文件目录和一个输出文件目录。参数以Example.py -s“输入文件源目录” -O“输出文件源目录”的形式提供。我想使用浏览功能

来输入和输出源

我有一个有效的浏览脚本,该脚本可以浏览所需的目录,但是当我将其设置为变量并将该变量设置为先前的参数时,它将无法正常工作。贝娄是我正在使用的代码遇到的两个错误

def get_source_file_directory():
# Allow user to select a directory and store it in global var
# called folder_path
    global folder_path
    filename = filedialog.askdirectory()
    folder_path.set(filename)
    print("Selected: " + filename)

    root = Tk()
    folder_path = StringVar()
    lbl1 = Label(master=root, textvariable=folder_path)
    lbl1.grid(row=0, column=1)
    button2 = Button(text="Browse", command=browse_button)
    button2.grid(row=0, column=3)

    mainloop()
    return filename

用于设置源文件的旧代码

def get_source_file_directory():
    ret = ""

    # Get argument count...
    args = len(sys.argv) - 1

    # Skip script name argument so point at position 1...
    position = 1

    while(args >= position):        
        if sys.argv[position].strip() == "-s" and position + 1 <= args:
            ret = sys.argv[position + 1]

        position = position + 1

    return ret

稍后回调功能

source_directory = get_source_file_directory()

错误:

回溯(最近通话最近):   文件“ C:/Users/mercedd/Desktop/extract_serial._beta.py”在第1280行中     source_directory = get_source_file_directory()   get_source_file_directory中的文件“ C:/Users/mercedd/Desktop/extract_serial._beta.py”,第82行     folder_path.set(文件名) NameError:未定义名称“ folder_path”

我希望source_directory可以在浏览器菜单中调用我选择的所选文件目录。

0 个答案:

没有答案