文章目录
-
- Python中的加密
- 日志模块
- Python内置函数总结
- Python的随机模块---random
- Python的迭代器
-
- [如何生成迭代器 -- iter](#如何生成迭代器 -- iter)
- [迭代器使用-- next](#迭代器使用-- next)
- [迭代器的常用方法☞ 生成迭代器](#迭代器的常用方法☞ 生成迭代器)
-
- [for循环生成 -- yield](#for循环生成 -- yield)
- for循环一行生成迭代器
- [迭代器常用方法 ☞ 佛如循环获取](#迭代器常用方法 ☞ 佛如循环获取)
- Python中的高级函数
Python中的加密
hashlib
- 难破解
- 不可逆
常用加密方法


base64

python
# coding:utf-8
import base64
def encode(data):
if isinstance(data, str):
data = data.encode('utf-8')
elif isinstance(data, bytes):
data = data
else:
raise TypeError('data need to be str or bytes')
return base64.b64encode(data).decode('utf-8')
def decode(data):
if not isinstance(data, bytes):
raise TypeError('data need to be bytes')
return base64.b64decode(data).decode('utf-8')
if __name__ == '__main__':
result = encode('zhagnsan')
print(result) # emhhZ25zYW4=
print(decode(result.encode('utf-8'))) # zhagnsan
日志模块
日志的等级
- debug
- info
- warnning
- error
- critical
loggin模块的使用
logging.basicConfig

format具体的格式

常用格式:

format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s'
使用logging
python
# coding:utf-8
import logging
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s')
logging.info('hello world') # 2025-12-30 16:04:35,657 logging_test.py[line:7] INFO hello world
Python内置函数总结



Python的随机模块---random
random.random

random.uniform

random.randint

random.choice

random.sample

random.randrange

python
# coding:utf-8
import random
print(random.random()) # 0.31219675861853746
print(random.uniform(10,20)) # 17.623909031688694
print(random.randint(10,20)) # 15
print(random.choice([1,2,3,4,5,6])) # 5
print(random.choice('shdfkl')) # k
print(random.sample([1,2,3,4,5,6],2)) # [4, 2]
print(random.randrange(1,10, 2)) # 5
Python的迭代器
Python的迭代器是一个重要的概念,特别是在处理序列数据和流数据时。迭代器是一种可以逐一遍历集合中所有元素的对象
如何生成迭代器 -- iter

迭代器使用-- next

python
# coding:utf-8
list_test = [1,2,3]
iter_test = iter(list_test)
print(next(iter_test)) # 1
迭代器的常用方法☞ 生成迭代器
for循环生成 -- yield
python
def yield_test():
for item in range(10):
yield item
res = yield_test()
print(res, type(res)) # <generator object yield_test at 0x00000290513E15F0> <class 'generator'>
for循环一行生成迭代器
python
res = (i for i in range(10))
迭代器常用方法 ☞ 佛如循环获取
python
def yield_test():
for item in range(10):
yield item
res = yield_test()
print(res, type(res)) # <generator object yield_test at 0x00000290513E15F0> <class 'generator'>
for item in res:
print(item, end=' ') # 0 1 2 3 4 5 6 7 8 9
Python中的高级函数
filter
功能
对循环根据过滤条件进行过滤
用法

python
res = filter(lambda x: x > 1, [0,1,2,3,4,5])
print(list(res)) # [2, 3, 4, 5]
map

python
res = map(lambda x: x > 1, [0,1,2,3,4,5])
print(list(res)) # [False, False, True, True, True, True]
reduce
对循环前后两个数据进行累加或者累乘等操作

python
from functools import reduce
res = reduce(lambda x, y: x + y, [0,1,2,3,4,5])
print(res) # 15