python - 我正确使用 os.system 吗?我的应用程序将不再打开
问题描述
几天前os.system(r"C:\Users\red\Desktop\Test UI")
,我的程序中有这条线。我对其进行了测试,它运行良好,它像我想要的那样打开了应用程序。
现在,大约五天后我又回来了,突然间它不能正常工作了。我检查了流程,它说'C:\Users\red\Desktop\Test' is not recognized as an internal or external command, operable program, or batch file.
我已经查看了有关 os.system 的其他问题,例如如何从 Python 执行程序?os.system 由于 path 中的空格而失败,但我已经在使用原始字符串,就像建议的答案之一一样。我不明白它是如何一天工作的,而下一天它却无法正常工作而没有任何改变。
解决方案
在 Windows 上出现许多路径问题后,我们最近用 subprocess.run 替换了 os.system。
对于此示例,您可以替换
os.system(r"C:\Users\red\Desktop\Test UI")
和
subprocess.run(r'"C:\Users\red\Desktop\Test UI"',shell=True)
对于 Windows 快捷方式,我必须在调用中添加 .lnk 扩展名:
subprocess.run(r'"C:\Users\red\Desktop\Test UI.lnk"',shell=True)
推荐阅读
- vue.js - axios Vuejs 未定义的响应
- r - 在 R 中使用日期和时间绘制连续数据点
- javascript - 尽管正确调用了函数,但页面未在 Flask 中呈现
- typescript - 打字稿有序字典
- python - TypeError:仅对 DatetimeIndex、TimedeltaIndex 或 PeriodIndex 有效,但获得了“Index”python 的实例
- javascript - 无法写入数组
- c# - WPF-在stackPanel内的dockPanels内循环所有动态创建的文本框
- asp.net-core - 项目根作为 Web 根(而不是 wwwroot)
- python - Python:使用生成器作为“元组”函数的输入
- rxjs - 当定时器达到零值时复位