Python3.5内置模块详解:shelve、xml、configparser、hashlib与hmac
31 浏览量
更新于2024-09-02
收藏 101KB PDF 举报
本文主要探讨了Python3.5中的五个内置模块:shelve、xml、configparser、hashlib以及hmac,并提供了相应的实例解析它们的功能和使用方式。
1、shelve模块
shelve模块提供了一个简单的键值对存储机制,用于持久化Python对象。它通过pickle模块将数据序列化,使得在存储和读取时能保持对象的原始状态。下面是一个使用shelve模块的例子:
```python
import shelve
import datetime
# 打开一个shelve文件
d = shelve.open('shelve_test')
# 存储不同类型的数据
info = {"age": 23, "job": "IT"}
name = ["alex", "rain", "test"]
d["name"] = name # 存储列表
d["info"] = info # 存储字典
d["data"] = datetime.datetime.now()
# 关闭shelve文件
d.close()
```
读取shelve中的数据,可以通过get方法完成:
```python
import shelve
import datetime
# 打开shelve文件
d = shelve.open('shelve_test')
# 读取存储的数据
print(d.get("name")) # 输出列表
print(d.get("info")) # 输出字典
print(d.get("data")) # 输出日期时间对象
# 关闭shelve文件
d.close()
```
2、xml模块
Python的xml模块用于处理XML文档,包括解析XML文档、创建XML文档、操作XML元素树等。例如,可以使用ElementTree API来解析XML文件:
```python
import xml.etree.ElementTree as ET
# 解析XML文件
tree = ET.parse('example.xml')
root = tree.getroot()
# 遍历XML元素
for child in root:
print(child.tag, child.attrib)
```
3、configparser模块
configparser模块用于读写INI格式配置文件,常用于保存应用的设置。下面是一个使用configparser的例子:
```python
import configparser
# 创建配置文件
config = configparser.ConfigParser()
config['DEFAULT'] = {'ServerAliveInterval': '45'}
config['COMPUTER1'] = {'Host': 'alpha', 'IP': '192.168.1.1'}
config['COMPUTER2'] = {'Host': 'beta', 'IP': '192.168.1.2'}
# 将配置写入文件
with open('config.ini', 'w') as configfile:
config.write(configfile)
# 读取配置文件
config = configparser.ConfigParser()
config.read('config.ini')
# 输出配置信息
print(config['COMPUTER1']['Host'])
print(config['COMPUTER1']['IP'])
```
4、hashlib模块
hashlib模块提供了各种哈希函数,如MD5、SHA1、SHA256等,用于计算字符串的哈希值。例如,计算一个字符串的SHA256哈希:
```python
import hashlib
message = 'Hello, World!'
hash_object = hashlib.sha256(message.encode())
hex_dig = hash_object.hexdigest()
print(hex_dig)
```
5、hmac模块
hmac模块用于生成消息认证码(HMAC),它结合了密钥和哈希函数,用于验证数据的完整性和来源。以下是如何使用hmac模块生成HMAC的示例:
```python
import hmac
import hashlib
key = b'secret key'
message = b'Hello, HMAC!'
hmac_digest = hmac.new(key, message, hashlib.sha256).digest()
print(hmac_digest)
```
以上五个模块是Python3.5中常用的内置模块,它们分别在数据持久化、XML处理、配置管理、数据校验和安全通信等方面有着广泛的应用。通过熟练掌握这些模块,开发者可以更高效地处理各种数据和任务。
2024-04-01 上传
点击了解资源详情
2021-01-20 上传
2018-12-18 上传
2020-09-20 上传
2022-06-26 上传
2020-09-21 上传
2020-12-24 上传
weixin_38599231
- 粉丝: 3
- 资源: 950
最新资源
- MCP C#试用试题
- nutch初学入门 非常好的入门教程
- c#面试题 网络转载 不错 经典
- C#设计模式大全 好书
- Struts+Spring+Hibernate整合教程.pdf
- BP神经网络原理及仿真实例
- 使用简介POWERPLAY
- Oracle 9i10g编程艺术
- scm手把手开发文档
- Cognos Impromptu
- LoadRunner安装手册.pdf
- cognos 部署 文档
- 用C语言进行单片机程序设计与应用
- Direct3D.ShaderX.-.Vertex.and.Pixel.Shader.Tips.and.Tricks.pdf
- 《uVision2入门教程》.pdf
- spring1.2申明式事务.txt