python中的常用函数库及函数(misc方向)

shr1mp 发布于 2026-01-23 212 次阅读


Pillow(PIL)库(图片识别)

主要用途:图片读取、像素操作、通道分离、GIF帧处理

Image.open(filename):打开图片文件,返回Image对象
Image.new(mode, size, color):创建新图片
img.getpixel((x, y)):获取指定坐标的像素值(返回元组(R, G, B))
img.putpixel((x, y), value):设置像素值
img.split():分离RGB通道,返回三个通道的图片
img.convert(mode):转换图片模式(如'L'灰度、'RGB'彩色)
img.save(filename):保存图片
img.seek(frame):跳转到GIF的指定帧(配合.n_frames获取总帧数)
img.n_frames:GIF图片的总帧数属性

pyzbar库(二维码识别)

主要用途:识别和解析二维码

    decode(image):识别图片中的二维码,返回解码结果列表

base64模块(内置)(编码)

    base64.b64encode(data):Base64编码
    base64.b64decode(data):Base64解码

zlib模块(内置)(编码)

主要用途:CRC32校验计算

zlib.crc32(data):计算数据的CRC32校验值

struct模块(内置)(字节与数据编码)

主要用途:字节与数据类型的打包/解包

    struct.pack(format, value):将数据打包为字节
    struct.unpack(format, data):将字节解包为数据
格式字符:

    'i':4字节整数
    'I':4字节无符号整数
    '>i':大端序4字节整数
    '

hashlib模块(内置)(md5编码)

主要用途:计算哈希值(MD5、SHA1等)

    hashlib.md5(data).hexdigest():计算MD5哈希
    hashlib.sha1(data).hexdigest():计算SHA1哈希
    hashlib.file_digest(file_obj, 'md5'):计算文件哈希

urllib.parse模块(内置)(url编码)

主要用途:URL编解码

    urllib.parse.unquote(string):URL解码
    urllib.parse.quote(string):URL编码

zipfile模块(内置)(zip压缩包)

主要用途:ZIP压缩包操作

    ZipFile(filename):打开ZIP文件
    .extractall(path=None, pwd=None):解压所有文件(可指定密码)
    .namelist():获取压缩包内文件列表

os模块(内置)(文件系统操作)

主要用途:文件系统操作

    os.listdir(path):列出目录内容
    os.path.join(path1, path2):拼接路径
    os.rename(src, dst):重命名文件
    os.walk(path):递归遍历目录

numpy库(数据处理)

主要用途:数组操作、数据分析

np.array(data):创建数组
np.unique(array):去重并排序
np.bincount(array):统计元素出现次数
np.fromfunction(func, shape):通过函数生成数组

pyshark库(流量)

主要作用:解析网络流量包(pcap文件)

FileCapture(filename):打开pcap文件
遍历数据包,通过.http、.tcp等属性访问协议字段

例子

import pyshark

cap = pyshark.FileCapture('traffic.pcap')
for packet in cap:
    if hasattr(packet, 'http'):
        print(f"HTTP请求: {packet.http.request_uri}")

socket模块(内置)(网络通信)

主要用途:网络通信(直接连接题目服务器)

    socket.socket():创建套接字
    s.connect((host, port)):连接服务器
    s.send(data):发送数据
    s.recv(bufsize):接收数据

binascii模块(内置)

主要用途:二进制与ASCII转换

    binascii.hexlify(data):字节转十六进制字符串
    binascii.unhexlify(hex_str):十六进制字符串转字节

itertools模块(内置)

主要用途:生成排列组合,用于密码爆破

    itertools.product(*iterables):笛卡尔积(多循环嵌套)
    itertools.permutations(iterable):排列
    itertools.combinations(iterable, r):组合
这个人很菜,但是在学
最后更新于 2026-01-24