网站开发规模和工作量的计算,网站建设的实习报告,node怎么做网站,网站缺点PyPinyin库
简介
PyPinyin库是一个支持中文转拼音输出的Python第三方库#xff0c;它可以根据词组智能匹配最正确的拼音#xff0c;并且支持多音字#xff0c;简单的繁体, 注音#xff0c;多种不同拼音/注音风格的转换。
安装
(framework-learn) C:\Users\zzgpip …PyPinyin库
简介
PyPinyin库是一个支持中文转拼音输出的Python第三方库它可以根据词组智能匹配最正确的拼音并且支持多音字简单的繁体, 注音多种不同拼音/注音风格的转换。
安装
(framework-learn) C:\Users\zzgpip install pypinyin
Collecting pypinyinDownloading pypinyin-0.51.0-py2.py3-none-any.whl.metadata (12 kB)
Downloading pypinyin-0.51.0-py2.py3-none-any.whl (1.4 MB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.4/1.4 MB 273.9 kB/s eta 0:00:00
Installing collected packages: pypinyin
Successfully installed pypinyin-0.51.0
使用
pypin方法
返回列表List每个元素都是另外成了一个列表其中包含了每个字的读音 pinyin 方法默认使用了 TONE 的风格即有声调的风格模式
# 引入第三方库:PyPinyin
from pypinyin import pinyin# 基本用法
print(pinyin(四月))
词是多音词需添加 heteronym 参数并设置为 True
温馨提示这里的多音词并不是指单个字的多音字而是这个词语本身就有两种读音。
from pypinyin import pinyin# 基本用法
print(pinyin(四月))# 多音词
print(pinyin(中心, heteronymTrue))
lazy_pinyin方法
将汉字转换为拼音返回不包含多音字结果的拼音列表lazy_pinyin 方法默认使用了 NORMAL即无声调的风格模式
# 引入第三方库:PyPinyin
from pypinyin import pinyin
from pypinyin import lazy_pinyin# 基本用法
print(pinyin(四月))# 多音词
print(pinyin(中心, heteronymTrue))# 返回一维列表
print(lazy_pinyin(你是我的眼))
音标风格转换
对转音标结果进行一些风格转换比如不带声调风格、标准声调风格、声调在拼音之后、声调在韵母之后、注音风格等等
# 引入第三方库:PyPinyin
from pypinyin import pinyin
from pypinyin import lazy_pinyin
from pypinyin import Style# 基本用法
print(pinyin(四月))# 多音词
print(pinyin(中心, heteronymTrue))# 返回一维列表
print(lazy_pinyin(你是我的眼))# 拼音风格指定不带声调风格、标准声调风格、声调在拼音之后、声调在韵母之后、注音风格
print(lazy_pinyin(我爱你,我的中国, styleStyle.NORMAL))
音标风格详解
#: 普通风格不带声调。如 中国 - zhong guo
NORMAL 0
#: 标准声调风格拼音声调在韵母第一个字母上默认风格。如 中国 - zhōng guó
TONE 1
#: 声调风格2即拼音声调在各个韵母之后用数字 [1-4] 进行表示。如 中国 - zho1ng guo2
TONE2 2
#: 声调风格3即拼音声调在各个拼音之后用数字 [1-4] 进行表示。如 中国 - zhong1 guo2
TONE3 8
#: 声母风格只返回各个拼音的声母部分注有的拼音没有声母详见 #27_。如 中国 - zh g
INITIALS 3
#: 首字母风格只返回拼音的首字母部分。如 中国 - z g
FIRST_LETTER 4
#: 韵母风格只返回各个拼音的韵母部分不带声调。如 中国 - ong uo
FINALS 5
#: 标准韵母风格带声调声调在韵母第一个字母上。如中国 - ōng uó
FINALS_TONE 6
#: 韵母风格2带声调声调在各个韵母之后用数字 [1-4] 进行表示。如 中国 - o1ng uo2
FINALS_TONE2 7
#: 韵母风格3带声调声调在各个拼音之后用数字 [1-4] 进行表示。如 中国 - ong1 uo2
FINALS_TONE3 9
#: 注音风格带声调阴平第一声不标。如 中国 - ㄓㄨㄥ ㄍㄨㄛˊ
BOPOMOFO 10
#: 注音风格仅首字母。如 中国 - ㄓ ㄍ
BOPOMOFO_FIRST 11
#: 汉语拼音与俄语字母对照风格声调在各个拼音之后用数字 [1-4] 进行表示。如 中国 - чжун1 го2
CYRILLIC 12
#: 汉语拼音与俄语字母对照风格仅首字母。如 中国 - ч г
CYRILLIC_FIRST 13PyPinyin异常/错误处理
如果我们输入的语句中有无法转换成拼音的字符存在我们就会引入PyPinyin库自带的errors参数
# 引入第三方库:PyPinyin
from pypinyin import pinyin
from pypinyin import lazy_pinyin
from pypinyin import Style# 基本用法
print(pinyin(四月))# 多音词
print(pinyin(中心, heteronymTrue))# 返回一维列表
print(lazy_pinyin(你是我的眼))# 拼音风格指定不带声调风格、标准声调风格、声调在拼音之后、声调在韵母之后、注音风格
print(lazy_pinyin(我爱你,我的中国, styleStyle.NORMAL))# 拼音异常处理, 遇到无法解析直接默认输出
print(lazy_pinyin(我爱你,我的中国))
errors 不同参数会对应不同的处理结果
1、默认是按照原文输出
2、errors ignore, 将不能转拼音的字符去掉
# 引入第三方库:PyPinyin
from pypinyin import pinyin
from pypinyin import lazy_pinyin, load_phrases_dict
from pypinyin import Style# 基本用法
print(pinyin(四月))# 多音词
print(pinyin(中心, heteronymTrue))# 返回一维列表
print(lazy_pinyin(你是我的眼))# 拼音风格指定不带声调风格、标准声调风格、声调在拼音之后、声调在韵母之后、注音风格
print(lazy_pinyin(我爱你,我的中国, styleStyle.NORMAL))# 拼音异常处理, 遇到无法解析直接默认输出
print(lazy_pinyin(我爱你,我的中国))# 拼音异常处理, 遇到无法解析直接直接过滤
print(lazy_pinyin(我爱你,我的中国, errorsignore))
3、errors lambda item:将无法转化的为音标的字符转换成指定字符
# 引入第三方库:PyPinyin
from pypinyin import pinyin
from pypinyin import lazy_pinyin, load_phrases_dict
from pypinyin import Style# 基本用法
print(pinyin(四月))# 多音词
print(pinyin(中心, heteronymTrue))# 返回一维列表
print(lazy_pinyin(你是我的眼))# 拼音风格指定不带声调风格、标准声调风格、声调在拼音之后、声调在韵母之后、注音风格
print(lazy_pinyin(我爱你,我的中国, styleStyle.NORMAL))# 拼音异常处理, 遇到无法解析直接默认输出
print(lazy_pinyin(我爱你,我的中国))# 拼音异常处理, 遇到无法解析直接直接过滤
print(lazy_pinyin(我爱你,我的中国, errorsignore))# 拼音异常处理, 遇到无法解析通过lambda 指定输出
print(lazy_pinyin(我爱你,我的中国, errorslambda item: .join([* if i , else i for i in item])))
自定义拼音
如果对PyPinyin库返回的结果不满意我们可以自定义自己的拼音库。
from pypinyin import pinyin
from pypinyin import lazy_pinyin, load_phrases_dict
from pypinyin import Style# 基本用法
print(pinyin(四月))# 多音词
print(pinyin(中心, heteronymTrue))# 返回一维列表
print(lazy_pinyin(你是我的眼))# 拼音风格指定不带声调风格、标准声调风格、声调在拼音之后、声调在韵母之后、注音风格
print(lazy_pinyin(我爱你,我的中国, styleStyle.NORMAL))# 拼音异常处理, 遇到无法解析直接默认输出
print(lazy_pinyin(我爱你,我的中国))# 拼音异常处理, 遇到无法解析直接直接过滤
print(lazy_pinyin(我爱你,我的中国, errorsignore))# 拼音异常处理, 遇到无法解析通过lambda 指定输出
print(lazy_pinyin(我爱你,我的中国, errorslambda item: .join([* if i , else i for i in item])))# 自定义拼音
print(lazy_pinyin(大夫))
personalized_dict {大夫: [[da], [fu]]
}
load_phrases_dict(personalized_dict)
print(lazy_pinyin(大夫))
shortuuid库
简介
shortuuid库是一个用于简单生成UUID。
安装
(framework-learn) C:\Users\zzgpip install shortuuid
Collecting shortuuidDownloading shortuuid-1.0.13-py3-none-any.whl.metadata (5.8 kB)
Downloading shortuuid-1.0.13-py3-none-any.whl (10 kB)
Installing collected packages: shortuuid
Successfully installed shortuuid-1.0.13
使用
快速生成UUID
# shortuuid uuid 生成工具
import shortuuid# 基础uuid 输出
print(shortuuid.uuid())
快速生成UUID 并同时指定命名空间URL/DNS
# shortuuid uuid 生成工具
import shortuuid# 基础uuid 输出
print(shortuuid.uuid())# uuid 生成并不指定命名空间
print(shortuuid.uuid(namewww.baidu.com))
# uuid 生成并指定命名空间
print(shortuuid.uuid(namehttps://www.baidu.com))
快速生成UUID,并指定生成长度
# shortuuid uuid 生成工具
import shortuuid# 基础uuid 输出
print(shortuuid.uuid())# uuid 生成并不指定命名空间
print(shortuuid.uuid(namewww.baidu.com))
# uuid 生成并指定命名空间
print(shortuuid.uuid(namehttps://www.baidu.com))# uuid 生成并指定长度
print(shortuuid.random(length10))
查看UUID生成字母表
import shortuuid# 基础uuid 输出
print(shortuuid.uuid())# uuid 生成并不指定命名空间
print(shortuuid.uuid(namewww.baidu.com))
# uuid 生成并指定命名空间
print(shortuuid.uuid(namehttps://www.baidu.com))# uuid 生成并指定长度
print(shortuuid.random(length10))# 查看uuid 生成字母表
print(shortuuid.get_alphabet())设置UUID字母生成表
# shortuuid uuid 生成工具
import shortuuid# 基础uuid 输出
print(shortuuid.uuid())# uuid 生成并不指定命名空间
print(shortuuid.uuid(namewww.baidu.com))
# uuid 生成并指定命名空间
print(shortuuid.uuid(namehttps://www.baidu.com))# uuid 生成并指定长度
print(shortuuid.random(length10))# 查看uuid 生成字母表
print(shortuuid.get_alphabet())# 设置uuid 生成字母表
shortuuid.set_alphabet(alphabet123456789)print(shortuuid.uuid())
快速生成UUID 加密和解密
# shortuuid uuid 生成工具
import shortuuid# 基础uuid 输出
print(shortuuid.uuid())# uuid 生成并不指定命名空间
print(shortuuid.uuid(namewww.baidu.com))
# uuid 生成并指定命名空间
print(shortuuid.uuid(namehttps://www.baidu.com))# uuid 生成并指定长度
print(shortuuid.random(length10))# 查看uuid 生成字母表
print(shortuuid.get_alphabet())# 设置uuid 生成字母表
shortuuid.set_alphabet(alphabet123456789)print(shortuuid.uuid())# uuid 加密encode和解密decode
import uuid
u uuid.uuid4()
print(u)# 加密
s shortuuid.encode(u)
print(s)# 解密
print(shortuuid.decode(s))
快速生成UUID,对应实现类
# shortuuid uuid 生成工具
import shortuuid# 基础uuid 输出
print(shortuuid.uuid())# uuid 生成并不指定命名空间
print(shortuuid.uuid(namewww.baidu.com))
# uuid 生成并指定命名空间
print(shortuuid.uuid(namehttps://www.baidu.com))# uuid 生成并指定长度
print(shortuuid.random(length10))# 查看uuid 生成字母表
print(shortuuid.get_alphabet())# 设置uuid 生成字母表
shortuuid.set_alphabet(alphabet123456789)print(shortuuid.uuid())# uuid 加密encode和解密decode
import uuid
u uuid.uuid4()
print(u)# 加密
s shortuuid.encode(u)
print(s)# 解密
print(shortuuid.decode(s))# uuid 类实例化
su shortuuid.ShortUUID()# su 调用基础uuid
print(su.uuid())json库
简介
Python3 中可以使用 json 模块来对 JSON 数据进行编解码它包含了两个函数
json.dumps(): 对数据进行编码。json.loads(): 对数据进行解码。
安装
Python 默认自带库
使用
Python 数据格式转换为json 格式字符串
import json# 构建json对象
data {no: 1,name: Runoob,url: http://www.runoob.com
}
# json.dumps() 将Python数据类型转换为json格式的字符串。
obj json.dumps(data)
print(type(obj))
print(obj)
将json格式的字符串转换为Python数据类型(字典或列表)
#json 工具类
import json# 构建json对象
data {no: 1,name: Runoob,url: http://www.runoob.com
}
# json.dumps() 将Python数据类型转换为json格式的字符串。
obj json.dumps(data)
print(type(obj))
print(obj)# json.loads() 将json格式的字符串转换为Python数据类型(字典或列表)。
di json.loads(obj)
print(type(di))
print(di)
json 格式的字符串取值
import json# 构建json对象
data {no: 1,name: Runoob,url: http://www.runoob.com
}
# json.dumps() 将Python数据类型转换为json格式的字符串。
obj json.dumps(data)
print(type(obj))
print(obj)# json.loads() 将json格式的字符串转换为Python数据类型(字典或列表)。
di json.loads(obj)
print(type(di))
print(di)
# json 格式字符串取值
print(di[no])
json 格式的字符串赋值
#json 工具类
import json# 构建json对象
data {no: 1,name: Runoob,url: http://www.runoob.com
}
# json.dumps() 将Python数据类型转换为json格式的字符串。
obj json.dumps(data)
print(type(obj))
print(obj)# json.loads() 将json格式的字符串转换为Python数据类型(字典或列表)。
di json.loads(obj)
print(type(di))
print(di)
# json 格式字符串取值
print(di[no])# json 格式字符串重新赋值
di[no] 10print(di)