如何在Python中执行系统命令
发布时间:2024-01-17 12:29:56
在Python中执行系统命令有多种方式,可以使用os.system()函数、subprocess模块中的函数、os.popen()函数以及使用!符号在Jupyter Notebook中执行系统命令。
1. 使用os.system()函数执行系统命令:
import os
# 执行系统命令
os.system("ls")
# 执行带参数的系统命令
path = "/home/user"
os.system("ls {}".format(path))
在上面的例子中,os.system()函数可以执行任何系统命令。它将命令作为字符串参数传递给操作系统,并等待命令执行完成后返回执行结果。
2. 使用subprocess模块执行系统命令:
import subprocess
# 执行系统命令
subprocess.call("ls", shell=True)
# 执行带参数的系统命令
path = "/home/user"
subprocess.call(["ls", path])
subprocess模块提供了更强大和灵活的方法来执行系统命令。subprocess.call()函数可以接受一个字符串参数或一个包含命令和参数的列表。设置shell=True可以在UNIX-like系统中使用shell解释器执行命令。
3. 使用os.popen()函数执行系统命令:
import os
# 执行系统命令
output = os.popen("ls").read()
print(output)
# 执行带参数的系统命令
path = "/home/user"
output = os.popen("ls {}".format(path)).read()
print(output)
os.popen()函数可以执行系统命令并返回其输出。使用.read()方法获取命令的输出。
4. 在Jupyter Notebook中使用!符号执行系统命令:
在Jupyter Notebook中,可以直接在代码单元格中使用!符号来执行系统命令。
!ls
path = "/home/user"
!ls {path}
!符号后面跟着的命令将在Jupyter Notebook中执行,并将结果显示在输出单元格中。
总结:
以上是在Python中执行系统命令的几种常见方法,可以根据具体的需求选择合适的方法。这些方法可以帮助我们在Python程序中与操作系统进行交互,执行系统命令并获取命令的输出。
