python的系统模块

sys
sys.argv 可以从程序外面向程序中进行传参,一般适用于命名行为

运行文件的命令:python filepath argv1,argv2…

sys.exit(code) code为0则表示程序正常结束,如果为其他数字则表示异常 退出程序

结束一段代码,根据需求,可以尝试采用break,return【只是用在函数中】,

sys.getdefaultencoding() 打印字符编码格式
sys.getfilesystemencoding() 打印字符编码格式

print(‘fhajkfg’,file=open(r’a.txt,‘w’) 打印到控制台
print(‘fsdafsf’,file=sys.stdout) 打印到文件中

base64
base64是一种由64个字符来表示任意二进制数据的符方法
base64是常见的二进制编码格式
原理: 对二进制数据进行处理,每三个字节为一组,总共3*8=24位,化为四组,每组
为6位,会得到4个索引【二进制转换为10进制】,然后通过该索引进行查表获取相应的字符
就是编码之后的字符
编码a=base64.b64encode(b’sdfasdaf123’)

解码base64.b64decode(a)

安全编码,专门针对+和/
print(base64.urlsafe_b64decode())

base64就是一种通过查表的编码方式,不能用于加密,类似于encode或者encode maketrans和translate
base64是一种任意二进制到文本字符的编解码方式,使用场景:coockie,session,在网页中
传递少量的二进制数据

itertools
提供了一些操作迭代对象的函数,包含无限迭代器

1、count()

r1=itertools.count(1100) 从1开始步长100的无限迭代器

2、cycle()
r2=itertools.cycle(“abcd”)

3、repeat()
r3=itertools.repeat(‘a’,5)

4、chain()

itertools.chain(‘abc’,‘xyz’)
print(r4)
for n4 in r4:
print(n4)

5、groupby()
r5=itertools.groupby(“aaaaabbcccc”)
for n5 in r5:
print(n5)
注意: itertools其中全部都是操作迭代对象的函数,但是,得到的结果并不是list
而是iterator,
作用类似于生成器,只有迭代使用

String模块

1、获取所有的字母,包括大小写
print(string.ascii_letters)

2、获取所有的大写字母或者小写字母
print(string…ascii_uppercase)
print(string.ascii_lowercase)

3、获取所有的数字
print(string.digits)

4、获取把进制或者十六进制字符
print(string.octdigits)
print(string.hexdigits)

5、获取所有可以被打印的字符
print(string.printable)

6、获取所有的标点符号
print(string.punctuation)

7、获取所有的空白字符
print(string.whitespace)

md5
md5=haslib.md5()

md5.update(‘hfjakht’.encode(‘utf-8’))
可以分步执行
print(md5.hexdigest())

sha1

md5=haslib.sha1()

md5.update(‘hfjakht’.encode(‘utf-8’))
可以分步执行
print(md5.hexdigest())

越安全的算法,不仅计算速度慢而且摘要会更成
使用场景,看看是否被篡改过

collection

1、namedtuple()
#需求:使用不同的方式表示圆心【x和y】
Point=namedtuple(‘Point’,[‘x’,‘y’])
p=Point(5,7)
print(p.x,p.y)
nametuple 是一个函数,它用来创建一个自定义元组,规定了元组中元素的个数,并通过面向对象中属性的方式访问元组,但是,保持了元组的不可变性。
2、deque()
使用list来存储数据时,按照索引进访问元素很快,但是插入和是删除的速度较慢,
因为list是线性村数,所以插入和删除效率较低

deque队列是实现高效插入和删除的双向列表,适用于队列和栈

list:
增:append()追加到末尾,extends()追加到末尾,insert()可以在默认的位置插入
删:remove() pop()
deque:
增:append()追加到末尾, appendleft() 追加到头部
删:pop()删除末尾元素 popleft()删除头部
3、defaultdict(func)
func如果访问了不存在的key,则直接报错

dict1={a:1}
r0=dict1.setdefault(“a”,100)
print(r0)

4、OrderedDict类

5、Counter

data=‘sdfadasfasdf’
for ele in data:
c[ele]+=1
print©

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值