python中使用shell命令及常用函数
admin
2023-03-02 11:02:14
0

操作:

导入模块 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()。

说明:

  1. 在Python 3.5之后的版本中,官方文档中提倡通过subprocess.run()函数替代其他函数来使用subproccess模块的功能;
  2. 在Python 3.5之前的版本中,我们可以通过subprocess.call(),subprocess.getoutput()等上面列出的其他函数来使用subprocess模块的功能;
  3. subprocess.run()、subprocess.call()、subprocess.check_call()和subprocess.check_output()都是通过对subprocess.Popen的封装来实现的高级函数,因此如果我们需要更复杂功能时,可以通过subprocess.Popen来完成。
  4. 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')

相关内容

热门资讯

有人呼吁白宫“封杀”中国开源大... 未来一段时间,将有多款中国开源模型发布。Kimi K3定于7月27日正式开源,阿里即将开源2.4万亿...
20名“高考状元”选择学医!此... 2026年香港高考的24名“状元”中,有20人明确表示将留港攻读医科。多年来,香港最顶尖的“学霸们”...
“抢人大战”,风向有变? 各地一场“抢老人”的大战,已然徐徐拉开大幕。最近,有着人口净流出压力的吉林,计划拿出3亿元发展旅居康...
石家庄一家不限量的爱心素食面馆... 7月24日正午时分,记者来到位于石家庄市新华区东明家居西二环店北门旁的“素面”小店,不大的店面里坐满...
中材科技申请风电叶片外补强辅助... 国家知识产权局信息显示,中材科技(伊吾)风电叶片有限公司申请一项名为“风电叶片外补强辅助固化装置”的...
为人工智能治理提供重要公共产品 图为2026世界人工智能大会暨人工智能全球治理高级别会议举办期间,在世博展览馆灵心巧手展位,参观者观...
泽连斯基称俄对乌多地发动大规模... 当地时间25日,乌克兰总统泽连斯基通报称,俄军于当日凌晨对乌克兰多地发动大规模空袭,使用2枚导弹、近...
不怕没水!武汉科学家找到水稻身... 干旱来了,水稻启动"抗旱模式",可一启动就长不大、结得少——这是困扰育种界几十年的老难题。7月23日...
多款手机涨价超1000元,大存... 今年暑期消费旺季,国内智能手机市场迎来一轮显著的价格上调。第一财经记者走访深圳多家品牌门店发现,以v...
SpaceX上市后星舰首飞:首... 界面新闻实习记者 | 李响 在经历多次波折后,SpaceX公司的星舰(Starship)终于完成了...