subprocess模块,字符串详解

系统模块
shutil
subprocess.run() 让Python脚本支持系统命令
import subprocess
subprocess.run([‘ls’,’~’])
ls: 无法访问’~’: 没有那个文件或目录
CompletedProcess(args=[‘ls’, ‘~’], returncode=2)
subprocess.run([‘ls’,’~’],shell=True)
公共 下载 code ls
模板 音乐 crack_pycharm myos.tar.gz
视频 桌面 crack.tar.gz nginx.tar.gz
图片 anaconda-ks.cfg httpd.tar.gz pycharm-professional-2017.3.tar.gz
文档 bin initial-setup-ks.cfg setup.sh
CompletedProcess(args=[‘ls’, ‘~’], returncode=0)

help(subprocess) 查看模块帮助

subprocess.run(‘ls /home’,shell=True)
k
CompletedProcess(args=‘ls /home’, returncode=0)
x = subprocess.run(‘ls /homeh’,shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE)
print(x.stderr)
b"ls: \xe6\x97\xa0\xe6\xb3\x95\xe8\xae\xbf\xe9\x97\xae’/homeh’: \xe6\xb2\xa1\xe6\x9c\x89\xe9\x82\xa3\xe4\xb8\xaa\xe6\x96\x87\xe4\xbb\xb6\xe6\x88\x96\xe7\x9b\xae\xe5\xbd\x95\n"
print(x.stderr.decode())
ls: 无法访问’/homeh’: 没有那个文件或目录

print(x.args)
ls /homeh
print(x.returncode)
2

if__name__ 内置变量
如果执行脚本本身变量__name__存储__main__
如果不是执行脚本本身变量__name__存储变量名
[root@dc ~]# vim t.py
[root@dc ~]# python3 t.py
main
[root@dc ~]# cat t.py
print(name)

[root@dc ~]# vim aa.py
[root@dc ~]# python3 aa.py
t
[root@dc ~]# cat aa.py
import t

字符串详解
序列
在这里插入图片描述

Python内建函数
list( ) 创建列表 [ ]
str( ) 创建字符串 ’ ’
tuple ( ) 创建元组 ( )
len ( ) 统计变量值的个数
enumerate 接收一个可迭代对象作为参数
reversed 接收一个序列作为参数,逆序
L2=[1,3,5,7,9]
L2.reverse()
print(L2)
[9, 7, 5, 3, 1]
sorted 排序 ,返回一个有序的列表
L3=[34,24,67,11]
sorted(L3)
[11, 24, 34, 67]
sorted(L3,reverse=True)
[67, 34, 24, 11]
字符串
切片 [ ] ,[ : ],[ : : ](两个冒号第两个意思是步长 ,默认步长为1)
成员关系 in, not in

格式化字符—输出数据有样式
%s 匹配字符
%d 匹配整数
age=19
name=‘bob’
print(‘我是%s今年%d岁’%(name,age))
我是bob今年19岁
print(‘我是%s今年%d岁,明年%d岁’%(name,age,age+1))
我是bob今年19岁,明年20岁
%f 匹配小数默认保留6位

L1 = [3,13,456,34464]
for i in L1:
… print(‘数字%05d’ %i)

数字00003
数字00013
数字00456
数字34464
name=‘dc’
pay=200000.0
age=23
print(f"我叫{name}工资{pay}年龄{age}")
我叫dc工资200000.0年龄23

  • 显示正号
    L1 = [2,13,555,9999]
    for i in L1:
    … print("+++%-5d+++" %i)

    +++2 +++
    +++13 +++
    +++555 +++
    +++9999 +++
    0 左侧空白位置补0
  • 左对齐(默认右对齐)
    for i in L1:
    … print("%-5d" %i)

    2
    13
    555
    9999
    宽度:整个数据输出的长度
    精度:保留小数位后多少位(默认6位)
    “–%f–”%3.1415926
    ‘–3.141593–’
    “–%7.2f–”%3.1415926
    ‘-- 3.14–’
    “–%07.2f–”%3.1415926
    ‘–0003.14–’
    “–%07.2f–”%23.668
    ‘–0023.67–’

format函数
format(值列表)
关键字
‘my name is{name},age is{age}’.format(name=“bob”,age=19)
‘my name isbob,age is19’
‘my name is{x},age is{y}’.format(x=“bob”,y=19)
‘my name isbob,age is19’
列表元素
‘name is {0[0]}age is {0[1]}’.format([‘dc’,19])
‘name is dcage is 19’

写一个程序,输入字符串,整数,浮点数,为10个字节宽度的字符串
str = input(‘请输入字符串:’)
flt = float(input('请输入浮点数: '))
num = int(input(‘请输入整数:’))

print(str,flt,num)

print(“±---------+”)
print("|%-10s|" %str)
print("|%10.2f|" %flt)
print("|%010d|" %num)
print(“±---------+”)
[root@dc ~]# python3 4.1.py
请输入字符串:abc
请输入浮点数: 123.456
请输入整数:1345678
abc 123.456 1345678
±---------+
|abc |
| 123.46|
|0001345678|
±---------+

fmt = ‘’’
±---------+
|%-10s|
|%10.2f|
|%010d|
±---------+
‘’’

result = fmt % (str, flt, num)
print(result)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值