我试图了解如何使用 os.system 模块来执行 7zip 命令。现在我不想用 Popen 或子进程使事情复杂化。我已经安装了 7zip 并将 7zip.exe 复制到我的用户文件夹中。我只想解压缩我的测试文件 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()
非常感谢
最佳答案
以下行有几个问题:
os.system("C:\Users\Oulton\ 7z e C:\Users\Oulton\install.zip ")
由于您的字符串包含反斜杠,您应该使用 raw string :
os.system(r"C:\Users\Oulton\7z -e C:\Users\Oulton\install.zip")
(注意第一个双引号之前的
r
。)我还删除了多余的空格。第一个(在
7z
之前)肯定有问题。另请注意,
traceback.print_exc
不会调用该函数。您需要添加括号: traceback.print_exc()
。最后,建议在新代码中
subprocess
模块是 used in preference to os.system()
。关于python - 如何从python脚本执行7zip命令,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9128169/