python里面os.system
时间: 2024-11-23 22:29:36 浏览: 21
`os.system()` 是 Python 内置的一个函数,用于执行操作系统命令并返回其退出状态码。在 Python 3.5 之前的版本中,这个方法主要用于简单地运行外部程序。以下是 `os.system()` 的基本用法:
```python
# 使用 os.system() 执行命令,如打印 "Hello World!"
os.system("echo Hello World!")
# 如果需要等待命令完成并获取输出,但不关心输出结果,可以这样调用
# 注意:这通常不会返回命令的实际输出,除非命令直接写入标准输出
output = os.popen("ls -l").read()
```
然而,由于它不能直接处理命令的输出流,对于更复杂的需求,如控制输入、获取输出并处理错误,`subprocess` 模块提供了更强大的替代方法,如 `subprocess.call()` 和 `subprocess.check_output()`。
在 Python 3.5 及以后的版本中,推荐使用 `subprocess.run()` 或 `subprocess.check_output()`,它们提供了更多的灵活性和错误处理能力。例如:
```python
# 使用 subprocess.run() 运行命令并获取输出
result = subprocess.run(["ls", "-l"], capture_output=True, text=True)
print(result.stdout) # 输出 ls 命令的结果
# 使用 subprocess.check_output() 获取命令输出,如果命令失败会抛异常
output = subprocess.check_output(["ls", "-l"])
print(output) # 输出同上,如果命令失败则会捕获异常
```
阅读全文