Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法分析

下面就来详细讲解一下Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块的用法:

shelve模块

shelve模块是一个简易的对象持久化存储模块,用于将Python对象持久化到磁盘上,读取时可以直接还原成对象。shelve模块的主要接口是open()函数。

用法示例

import shelve

# 创建一个本地数据库文件
db = shelve.open('mydb')
db['name'] = 'Tom'
db['age'] = 23

# 关闭数据库文件
db.close()

# 读取数据库文件
db = shelve.open('mydb')
name = db['name']
age = db['age']
print(name, age)

# 关闭数据库文件
db.close()

上面的例子中,创建了一个名为'mydb'的本地数据库文件,然后往里面添加了两个字段,'name'和'age',关闭文件后再重新打开,就可以读取到之前存储的数据了。

xml模块

xml模块是Python内置的一个XML处理模块,可以用于解析xml文件、生成xml文件,以及对xml文件进行操作。

用法示例

import xml.etree.ElementTree as ET

# 解析xml文件
tree = ET.parse('test.xml')
root = tree.getroot()

# 遍历xml数据
for child in root:
    print(child.tag, child.attrib)

# 读取xml数据
for country in root.findall('country'):
    rank = country.find('rank').text
    name = country.get('name')
    print(rank, name)

# 修改xml数据
for rank in root.iter('rank'):
    new_rank = int(rank.text) + 1
    rank.text = str(new_rank)
    rank.set('updated', 'yes')

# 写入xml文件
tree.write('output.xml')

上面的例子中,首先解析了一个名为'test.xml'的xml文件,然后遍历了一下xml数据,读取了'rank'和'name'字段,接着修改了'rank'字段的值,最后将修改后的xml写入了一个新的文件。

configparser模块

configparser模块是Python内置的一个配置文件解析模块,可以用于读取和修改各种类型的配置文件。

用法示例

import configparser

# 创建配置文件
config = configparser.ConfigParser()
config['db'] = {'host': 'localhost', 'port': '3306'}
config['user'] = {'name': 'Tom', 'password': '123456'}

# 写入配置文件
with open('config.ini', 'w') as configfile:
    config.write(configfile)

# 读取配置文件
config = configparser.ConfigParser()
config.read('config.ini')

host = config.get('db', 'host')
port = config.get('db', 'port')
name = config.get('user', 'name')
password = config.get('user', 'password')
print(host, port, name, password)

# 修改配置文件
config.set('db', 'port', '3307')
with open('config.ini', 'w') as configfile:
    config.write(configfile)

上面的例子中,首先创建了一个名为'config.ini'的配置文件,并写入了两组配置信息,然后将其写入文件。接着读取了配置文件,并获取了'host'、'port'、'name'和'password'等字段的值。最后修改了'port'字段的值,并将修改后的配置信息重新写入文件。

hashlib和hmac模块

hashlib和hmac模块是Python内置的加密模块,可以用于加密哈希值和消息认证码。

用法示例

import hashlib
import hmac

# hashlib模块
str = 'abc'
md5 = hashlib.md5(str.encode('utf-8')).hexdigest()
sha1 = hashlib.sha1(str.encode('utf-8')).hexdigest()
print(md5, sha1)

# hmac模块
key = b'secret'
msg = b'message'
sha256 = hmac.new(key, msg, digestmod='sha256').hexdigest()
print(sha256)

上面的例子中,使用hashlib模块分别对'abc'字符串进行md5和sha1加密,返回了它们的哈希值。接着使用hmac模块对一条消息进行sha256认证,返回了消息的认证码。

以上就是Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块的用法分析。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法分析 - Python技术站

(0)
上一篇 2023年6月2日
下一篇 2023年6月2日

相关文章

  • Python爬取微信小程序Charles实现过程图解

    当你需要用Python爬取微信小程序的数据时,你可以使用Charles代理工具来进行抓包,获取请求和响应数据。下面是Python爬取微信小程序Charles实现过程的详细攻略: 步骤1:安装和配置Charles 首先,你需要在电脑上安装并启动Charles。安装完Charles之后,在Charles的Proxy菜单栏中找到Proxy Settings,把Pr…

    python 2023年5月23日
    00
  • 使用pycharm运行flask应用程序的详细教程

    使用PyCharm运行Flask应用程序的详细教程 为了使用PyCharm运行Flask应用程序,需要执行以下步骤: 确保已经安装了Python和PyCharm IDE:在开始使用PyCharm运行Flask应用程序之前,需要先确保安装了Python和PyCharm。 安装Flask扩展:可以使用pip(Python包管理器)来安装Flask扩展。在命令行中…

    python 2023年5月13日
    00
  • python语言实现贪吃蛇游戏

    Python语言实现贪吃蛇游戏 概述 贪吃蛇是一款经典的小游戏,玩家操纵蛇头移动,以吃到食物并不断增长长度为目的。在本文中,我们将向读者介绍使用Python语言实现贪吃蛇游戏的完整攻略。 实现过程 步骤1:初始化 在开始实现贪吃蛇游戏之前,我们需要先初始化一些变量和模块,例如: 导入必要的模块:pygame、random等。 定义一些变量:如颜色、分数等,这…

    python 2023年6月2日
    00
  • Python 向装饰器添加参数

    为了讲解Python向装饰器添加参数的使用方法,我们先来介绍一下Python装饰器的基本概念。 Python装饰器是一种函数,它可以接受一个函数作为参数,并返回一个新的函数。装饰器可以在不修改原函数的情况下,增加一些额外的功能。在Python中,我们可以通过“@”符号来使用装饰器,例如: @decorator def func(): pass 在这个例子中,…

    python-answer 2023年3月25日
    00
  • python数学建模之三大模型与十大常用算法详情

    下面是关于“Python数学建模之三大模型与十大常用算法”的完整攻略。 1. 三大模型 1.1 线性规划模型 线性规划模型是一种优化模型,它的目是在一组线性约束条件,最大化或最小化一个线性目标函数。在Python中,我们可以使用scipy.optimize.linprog函数来实现线性规划模型。 1.2 非线性规划模型 非线性规模型是一种优化模型它的目标是在…

    python 2023年5月13日
    00
  • Python中文编码那些事

    Python中文编码那些事 在Python编程中,中文编码是一个必须要面对的问题。这篇文章将以详细的方式来讲解Python中文编码的相关知识和常见问题。 为什么会出现中文编码问题 在计算机中,所有的数据都是以二进制的形式存储和传递的。而对于中文这种非ASCII字符,如果要被存储和传递必须要使用一种特殊的编码方式。在Python中,常见的中文编码方式包括了GB…

    python 2023年5月31日
    00
  • python PyAUtoGUI库实现自动化控制鼠标键盘

    Python PyAutoGUI是一种自动化框架,允许自动化控制键盘和鼠标。通过这个框架,可以模拟人工鼠标键盘操作,从而实现自动化的效果,挽救大量时间和成本。 下面是一个关于如何使用PyAutoGUI框架的完整攻略: 安装PyAutoGUI 要使用PyAutoGUI框架,必须先安装它。安装Python后,在命令提示符或终端窗口中,使用以下命令进行安装: pi…

    python 2023年5月18日
    00
  • Python几种常见算法汇总

    以下是关于“Python几种常见算法汇总”的完整攻略: 简介 Python是一种高级编程语言,它支持多种算法和数据结构。在本教程中,我们将介绍Python中几种常见的算法,包括排序算法、搜索算法、动态规划算法和贪心算法。我们将使用示例说明来展示这些算法的基本原理和实现方法。 排序算法 排序算法是一种将数据按照一定规则进行排序的算法。Python中常见的排序算…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部