输入:拖放多个目录(多行)?

我要求用户输入尽可能多的目录路径,如下所示:

allPaths = []
while True:
  path = raw_input('bla')
  if validatePath(path):
    allPaths.append(path)
  else:
    break

现在,用户选择多个文件夹,在Windows上对其进行Shift + Rightclick并使用“复制路径”,这将给他一个目录列表,如下所示:

"C:UsersxxDesktoptest"
"C:UsersxxDesktoptest2"

通过使用鼠标右键单击插入到CMD窗口中,它将被raw_input接受为多个单行,也就是说,对于每个换行符,raw_input()将结束,运行ValidatePaths并接下一行。

现在我想实现的是,应该可以直接在CMD窗口/运行脚本上拖放多个目录,并获得相同的结果。

现在,当删除多个目录时会发生什么:它只是将第一个目录的路径输入到raw_input()中,但不会继续,因为拖放操作可能没有新的换行符,因此raw_input会一直等待。 有没有办法改变我的Python可执行文件(Pyinstaller exe)的这个hebaviour,或者这将取决于CMD,因此不能为我改变?

谢谢

链接地址: http://www.djcxy.com/p/56501.html

上一篇: input: Drag/Drop several directories (multiline)?

下一篇: Tab autocomplete and simple implementation of subcommands in python cmd module?