利用python3随机生成中文字符的实现方法


Posted in Python onNovember 24, 2017

前言

运行环境在Python3.6下,Python2的解决方案网上有很多.,想学习python2实现的朋友们可以参考这篇文章:https://3water.com/article/34884.htm,下面来一起看看详细的介绍吧。

第一种方法:Unicode码

在unicode码中,汉字的范围是(0x4E00, 9FBF)

import random

def Unicode():
 val = random.randint(0x4e00, 0x9fbf)
 return chr(val)

这个方法比较简单,但是有个小问题,unicode码中收录了2万多个汉字,包含很多生僻的繁体字.

第二种方法:GBK2312

gbk2312对字符的编码采用两个字节相组合,第一个字节的范围是0xB0-0xF7, 第二个字节的范围是0xA1-0xFE.
对GBK2312编码方式详细的解释请参看GBK2312编码

import random

def GBK2312():
 head = random.randint(0xb0, 0xf7)
 body = random.randint(0xa1, 0xfe)
 val = f'{head:x}{body:x}'
 str = bytes.fromhex(val).decode('gb2312')
 return str

GBK2312收录了6千多常用汉字.两种方法的取舍就看需求了.

下面来给大家详细介绍下关于Python基础知识之encode和decode函数的相关内容,通过下面的简单介绍,对大家理解上面的实现方法具有一定的参考价值,下面来一起看看吧。

ptyhon encode和decode函数

Python2.x中默认的编码的基础类型是unicode编码的类型,在Python3.x才转化为基于unicode的字符串。
那么我们在Python2.x的学习中就会遇到各种各样的编码问题,encode和decode函数就是很好的帮我们解决这样问题的工具。
下面的程序中有详细的介绍和例子!~

在Python2.x中:

u = u'中文' #显示指定unicode类型对象u 
str = u.encode('gb2312') #以gb2312编码对unicode对像进行编码 
str1 = u.encode('gbk') #以gbk编码对unicode对像进行编码 
str2 = u.encode('utf-8') #以utf-8编码对unicode对像进行编码 
u1 = str.decode('gb2312')#以gb2312编码对字符串str进行解码,以获取unicode 
u2 = str.decode('utf-8')#如果以utf-8的编码对str进行解码得到的结果,将无法还原原来的unicode类型

在Python3.x中:

u = '中文' #指定字符串类型对象u 
str = u.encode('gb2312') #以gb2312编码对u进行编码,获得bytes类型对象str 
u1 = str.decode('gb2312')#以gb2312编码对字符串str进行解码,获得字符串类型对象u1 
u2 = str.decode('utf-8')#如果以utf-8的编码对str进行解码得到的结果,将无法还原原来的字符串内容

但是我们在读取、写入文件的时候就要注意以文件的格式来判断用什么方式来操作了,txt文件默认都是utf-8当然你也可以自己设定编码格式。

我们在对txt文件进行操作时,最好都将编码格式转化为utf-8来方便操作吧!~

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。  

Python 相关文章推荐
Pycharm学习教程(2) 代码风格
May 02 Python
Python编写一个闹钟功能
Jul 11 Python
python计算auc指标实例
Jul 13 Python
python中的字符串内部换行方法
Jul 19 Python
Python使用pyserial进行串口通信的实例
Jul 02 Python
python将excel转换为csv的代码方法总结
Jul 03 Python
python多线程分块读取文件
Aug 29 Python
python模拟预测一下新型冠状病毒肺炎的数据
Feb 01 Python
Python +Selenium解决图片验证码登录或注册问题(推荐)
Feb 09 Python
Python处理PDF与CDF实例
Feb 26 Python
Pytorch高阶OP操作where,gather原理
Apr 30 Python
python opencv通过按键采集图片源码
May 20 Python
Python内置函数 next的具体使用方法
Nov 24 #Python
python中WSGI是什么,Python应用WSGI详解
Nov 24 #Python
python中print()函数的“,”与java中System.out.print()函数中的“+”功能详解
Nov 24 #Python
Python内置函数——__import__ 的使用方法
Nov 24 #Python
Django中login_required装饰器的深入介绍
Nov 24 #Python
Python多进程库multiprocessing中进程池Pool类的使用详解
Nov 24 #Python
pip安装Python库时遇到的问题及解决方法
Nov 23 #Python
You might like
php 中英文语言转换类
2011/09/07 PHP
ThinkPHP模版中导入CSS和JS文件的方法
2014/11/29 PHP
php对文件夹进行相关操作(遍历、计算大小)
2015/11/04 PHP
PHP递归统计系统中代码行数
2019/09/19 PHP
JavaScript Distilled 基础知识与函数
2010/04/07 Javascript
jquery重新播放css动画所遇问题解决
2013/08/21 Javascript
JS对HTML标签select的获取、添加、删除操作
2013/10/17 Javascript
Javascript验证方法大全
2015/09/21 Javascript
jQuery实现仿QQ空间装扮预览图片的鼠标提示效果代码
2015/10/30 Javascript
JavaScript实现页面跳转的方式汇总
2016/05/16 Javascript
javascript 判断当前浏览器版本并判断ie版本
2017/02/17 Javascript
jQuery EasyUI 为Combo,Combobox添加清除值功能的实例
2017/04/13 jQuery
bootstrap模态框示例代码分享
2017/05/17 Javascript
详谈for循环里面的break和continue语句
2017/07/20 Javascript
Vue组件开发技巧总结
2018/03/04 Javascript
JavaScript实现的简单Tab点击切换功能示例
2018/07/06 Javascript
基于axios 的responseType类型的设置方法
2019/10/29 Javascript
js实现小星星游戏
2020/03/23 Javascript
python正则表达式修复网站文章字体不统一的解决方法
2013/02/21 Python
用python删除java文件头上版权信息的方法
2014/07/31 Python
Python函数式编程指南(二):从函数开始
2015/06/24 Python
Python实现多进程共享数据的方法分析
2017/12/04 Python
Python实现上下班抢个顺风单脚本
2018/02/07 Python
python os.listdir按文件存取时间顺序列出目录的实例
2018/10/21 Python
利用Python实现微信找房机器人实例教程
2019/03/10 Python
python实现邮件发送功能
2019/08/10 Python
Pandas数据离散化原理及实例解析
2019/11/16 Python
python飞机大战pygame游戏之敌机出场实现方法详解
2019/12/17 Python
python使用Thread的setDaemon启动后台线程教程
2020/04/25 Python
HTML5实现多张图片上传功能
2016/03/11 HTML / CSS
美国著名的婴儿学步鞋老品牌:Robeez
2016/08/20 全球购物
Ellos丹麦:时尚和服装在线
2016/09/19 全球购物
文秘个人求职信范文
2014/04/22 职场文书
医德医风学习心得体会
2016/01/25 职场文书
Github 使用python对copilot做些简单使用测试
2022/04/14 Python
pd.drop_duplicates删除重复行的方法实现
2022/06/16 Python