Ale*_*ton 3 python os.system 7zip
我试图了解如何使用os.system模块执行7zip命令.现在我不想让Popen或子进程复杂化.我已经安装了7zip并将7zip.exe复制到我的users文件夹中.我只想提取我的测试文件install.zip.但是,使用下面的代码会导致shell在退出之前短暂出现并且没有发生解压缩.请你告诉我为什么?
def main():
try:
os.system(r"C:\Users\Oulton\ 7z e C:\Users\Oulton\install.zip")
except:
time.sleep(3)
traceback.print_exc
if __name__ == "__main__":
main()
Run Code Online (Sandbox Code Playgroud)
非常感谢
以下行有几个问题:
os.system("C:\Users\Oulton\ 7z e C:\Users\Oulton\install.zip ")
Run Code Online (Sandbox Code Playgroud)
由于您的字符串包含反斜杠,因此您应该使用原始字符串:
os.system(r"C:\Users\Oulton\7z -e C:\Users\Oulton\install.zip")
Run Code Online (Sandbox Code Playgroud)
(注意r第一个双引号之前.)
我也删除了无关的空间.第一个(在之前7z)肯定是有问题的.
另请注意,traceback.print_exc不会调用该函数.你需要添加括号:traceback.print_exc().
最后,建议在新代码中优先使用该subprocess模块.os.system()