分类:Python函数用法
主要分析一下subprocess.call,subprocess.Popen与os.system,os.popen调用命令的用法与区别
1、subprocess.call( )
import subprocess
ret = subprocess.call(cmd,shell=True)
cmd命令行中可以是字符串或者是序列(字符串列表list)的形式,shell=True表示会让subprocess.call接受字符串类型的变量作为命令,并调用shell去执行这个字符串,当shell=False时,subprocess.call只接受数组变量作为命令,并将数组的第一个元素作为命令,剩下的全部作为该命令的参数。
ret表示返回的可执行文件的返回值。
2、subprocess.Popen()
import subprocess
proc = subprocess.Popen('cmd', shell=True)
proc.communicate()
ret = proc.returncode
or:
import subprocess
proc = subprocess.Popen('cmd', shell=True)
ret = proc.wait()
用法同上,ret返回的是可执行文件的返回值。
3、os.system()
import os
ret = os.system(cmd)
需要注意的是,ret返回的是脚本的退出状态码。
4、os.popen()
import os
ret=os.popen(cmd)
需要注意的是,ret返回的是可执行文件的返回值,不是脚本的退出状态码。
THE END!
本博文只能阅读,谢绝转载,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 2963033731@qq.com