os.system无法用左括号调用文件'('在文件名中

时间:2017-12-17 07:42:45

标签: python windows os.system

我试图调用名称中包含括号的可执行文件(例如[https://i.stack.imgur.com/TGDkf.png][1] )。

使用Python 3.6.2,当我尝试以下操作时:

'test(1).exe'

我明白了:

os.system('test(1).exe')

但如果我通过删除'test' is not recognized as an internal or external command, operable program or batch file.将文件名更改为'test1).exe',则以下内容可以成功运行:

'('

为什么左括号导致os.system('test1).exe') 出现问题的任何想法?

2 个答案:

答案 0 :(得分:2)

在没有subprocess.call()的情况下使用shell=True可以避免以shell安全的方式引用参数:

subprocess.call(["test(1).exe"])

答案 1 :(得分:1)

解决方案:放一个' ^'在'之前的角色('像这样:

{{1}}