python命令函数使用详解,python中使用shell命令及常用函数

导入模块 subprocess

import subprocess

zhi = subprocess.getoutput(‘ls‘)

1. subprocess模块中的常用函数

函数

描述

subprocess.run()

Python 3.5中新增的函数。执行指定的命令,等待命令执行完成后返回一个包含执行结果的CompletedProcess类的实例。

subprocess.call()

执行指定的命令,返回命令执行状态,其功能类似于os.system(cmd)。

subprocess.check_call()

Python 2.5中新增的函数。 执行指定的命令,如果执行成功则返回状态码,否则抛出异常。其功能等价于subprocess.run(..., check=True)。

subprocess.check_output()

Python 2.7中新增的的函数。执行指定的命令,如果执行状态码为0则返回命令执行结果,否则抛出异常。

subprocess.getoutput(cmd)

接收字符串格式的命令,执行命令并返回执行结果,其功能类似于os.popen(cmd).read()和commands.getoutput(cmd)。

subprocess.getstatusoutput(cmd)

执行cmd命令,返回一个元组(命令执行状态, 命令执行结果输出),其功能类似于commands.getstatusoutput()。

说明:

在Python 3.5之后的版本中,官方文档中提倡通过subprocess.run()函数替代其他函数来使用subproccess模块的功能;

在Python 3.5之前的版本中,我们可以通过subprocess.call(),subprocess.getoutput()等上面列出的其他函数来使用subprocess模块的功能;

subprocess.run()、subprocess.call()、subprocess.check_call()和subprocess.check_output()都是通过对subprocess.Popen的封装来实现的高级函数,因此如果我们需要更复杂功能时,可以通过subprocess.Popen来完成。

subprocess.getoutput()和subprocess.getstatusoutput()函数是来自Python 2.x的commands模块的两个遗留函数。它们隐式的调用系统shell,并且不保证其他函数所具有的安全性和异常处理的一致性。另外,它们从Python 3.3.4开始才支持Windows平台。

python中常用函数及用法:

input() print() max() min() float()字符串

list() 列表 tuple()元组 str()字符串 int()整数 set()集合 {‘a‘:1}字典(键:值)键必须唯一

上!六种数据类型:列表、字典、集合为可变数据类型,元组字符串整不可变。

range() 用法:

for i in range(1,10)/(1,10,2) 后面,2表示步长

import os,join 导入一个模块,或者导入另一个.py文件

排序 sort();sorted()用法:

使用sort()方法对list排序会修改list本身,不会返回新list,通常此方法不如sorted()方便,但是如果你不需要保留原来的list,此方法将更有效sort()。

sorted()的reverse参数接受False 或者True 表示是否逆序

sa = [3,5,1,8,2]

sa.sort()

print(sa)

输出都是:[1, 2, 3, 5, 8]

sorted()用法:

my_list = [3, 5, 1, 8, 2]

result = sorted(my_list)

print result

倒序用法:

sa = [3,5,1,8,2,]

aaa = sorted(sa,reverse=True) 输出:[8,5,3,2,1]

print(aaa)

分割:split()

.split()里面指定分割符如:(‘-‘) 常用用法:

sa = ‘a-b--c‘

print(sa)

sss = list(sa.split(‘-‘))

print(sss)

分割前后结果:

a-b--c

[‘a‘, ‘b‘, ‘‘, ‘c‘]

返回值 return xx 通常用在函数里面

自己随意设置,可返回一个变量值,也可以返回另一个函数的名

如:

def cpu():

val4 = os.popen("w |awk ‘NR==1{print $8,$9,$10}‘")

sui = val4.read()

print(‘cpu负载:1分钟、5分钟、15分钟分别为:‘,sui)

return sui

f.open(‘/root/test.html‘)

原文:https://blog.51cto.com/14514572/2445136

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值