我想从IntelliJ IDEA中运行一个python脚本,将文件列表作为参数传递。我正在使用菜单运行 - >编辑配置 - >脚本参数来使用通配符定义文件列表,例如:"../examples/*.jpg"
在代码中,我正在使用像
这样的for循环来迭代文件列表for f in sys.argv[1:]:
虽然脚本从终端执行得很好,但IDEA会抛出一个未找到的文件异常:
No such file or directory: '../examples/*.jpg'
我认为这是有意义的(我的理论),因为在将命令行参数传递给文件列表之前没有涉及将命令行参数扩展到文件列表中。
这里有类似问题的答案:Pycharm and sys.argv arguments 使用通配符的相关答案是https://stackoverflow.com/a/41003295/7521854,但它不起作用。 (如果我有足够的代表,我会对这个答案发表评论,抱歉)
任何建议都会让我开心!
PS:运行OSX 10.11.6(El Capitan)
答案 0 :(得分:1)
在命令行参数中扩展通配符是命令行shell / terminal的功能。 IDE在启动应用程序时不使用命令行shell,因此不会扩展参数。相关要求: