Python3编码问题 Unicode utf-8 bytes互转方法


Posted in Python onOctober 26, 2018

为什么需要本文,因为在对接某些很老的接口的时候,需要传递过去的是16进制的hex字符串,并且要求对传的字符串做编码,这里就介绍了utf-8 Unicode bytes 等等。

#英文使用utf-8 转换成16进制hex字符串的方法
newstr = 'asd'
b_str = bytes(newstr,encoding='utf-8')
print(b_str)
hex_str = b_str.hex() #将bytes类型转换成16进制的hex字符串
print(hex_str) #字节码转16进制hex的方法
print(bytes.fromhex(hex_str).decode('utf-8')) #将16进制hex字符串转换成bytes,然后在转换成字符串
print(type('中文'.encode('utf-8')),'中文'.encode('unicode_escape'),'中文123456'.encode('unicode_escape').decode('utf-8'))

#中文转换成Unicode的一种方法之一
u_str = '中文123456'
b_str = bytes(u_str,encoding='unicode_escape')
h_u_s = b_str.hex()print ("\u4e2d\u6587") #Unicode编码可直接输出
#中文使用Unicode转换成bytes再转换成16进制hex方法 包含英文和数字
u_cn = '中文asd123'
hex_msg = bytes(u_cn,encoding='utf_16_be').hex() 
#这是特殊要求下最终的解决方案
#注意在Python3中已经没有了直接将字符串变成bytes或者Unicode的方法了
#也就是说,在Python中 u'中文'已经不再奏效

#bytes转str
b_str = bytes('中文',encoding='utf-8')
print(b_str.decode()) #直接输出为普通字符串

以上这篇Python3编码问题 Unicode utf-8 bytes互转方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
把大数据数字口语化(python与js)两种实现
Feb 21 Python
python解析xml模块封装代码
Feb 07 Python
python实现类的静态变量用法实例
May 08 Python
python根据日期返回星期几的方法
Jul 06 Python
python 实现红包随机生成算法的简单实例
Jan 04 Python
基于Python实现拆分和合并GIF动态图
Oct 22 Python
8段用于数据清洗Python代码(小结)
Oct 31 Python
python实现将json多行数据传入到mysql中使用
Dec 31 Python
Python如何实现的二分查找算法
May 27 Python
python获得命令行输入的参数的两种方式
Nov 02 Python
使用Python爬取Json数据的示例代码
Dec 07 Python
用python批量解压带密码的压缩包
May 31 Python
Python之两种模式的生产者消费者模型详解
Oct 26 #Python
Python打开文件,将list、numpy数组内容写入txt文件中的方法
Oct 26 #Python
Python批处理更改文件名os.rename的方法
Oct 26 #Python
浅谈django rest jwt vue 跨域问题
Oct 26 #Python
Python os.rename() 重命名目录和文件的示例
Oct 25 #Python
python实现旋转和水平翻转的方法
Oct 25 #Python
使用Python实现从各个子文件夹中复制指定文件的方法
Oct 25 #Python
You might like
PHP中使用imagick实现把PDF转成图片
2015/01/26 PHP
ThinkPHP框架表单验证操作方法
2017/07/19 PHP
PHP之多条件混合筛选功能的实现方法
2019/10/09 PHP
实用javaScript技术-屏蔽类
2006/08/15 Javascript
jQuery 中$(this).index与$.each的使用指南
2014/11/20 Javascript
JS数组(Array)处理函数整理
2014/12/07 Javascript
数据分析软件之FineReport教程:[5]参数界面JS(全)
2015/08/13 Javascript
animate 实现滑动切换效果【实例代码】
2016/05/05 Javascript
Ext JS框架程序中阻止键盘触发回退或者刷新页面的代码分享
2016/06/07 Javascript
jQuery插件HighCharts实现的2D回归直线散点效果示例【附demo源码下载】
2017/03/09 Javascript
JavaScript运动框架 多物体任意值运动(三)
2017/05/17 Javascript
JS判断一个数是否是水仙花数
2017/06/11 Javascript
详解webpack3如何正确引用并使用jQuery库
2017/08/26 jQuery
vue 解决addRoutes动态添加路由后刷新失效问题
2018/07/02 Javascript
JS实现鼠标拖拽盒子移动及右键点击盒子消失效果示例
2019/01/29 Javascript
使用imba.io框架得到比 vue 快50倍的性能基准
2019/06/17 Javascript
vue使用axios实现excel文件下载的功能
2020/07/16 Javascript
[01:04:32]DOTA2-DPC中国联赛 正赛 Aster vs LBZS BO3 第二场 2月23日
2021/03/11 DOTA
Python的Flask框架应用调用Redis队列数据的方法
2016/06/06 Python
基于Python数据可视化利器Matplotlib,绘图入门篇,Pyplot详解
2017/10/13 Python
对numpy中布尔型数组的处理方法详解
2018/04/17 Python
利用python循环创建多个文件的方法
2018/10/25 Python
学生信息管理系统Python面向对象版
2019/01/30 Python
python实现简单五子棋游戏
2019/06/18 Python
Django之PopUp的具体实现方法
2019/08/31 Python
俄罗斯购买内衣网站:Trusiki
2020/08/22 全球购物
this关键字的作用
2016/01/30 面试题
客服主管岗位职责
2013/12/13 职场文书
后勤采购员岗位职责
2013/12/19 职场文书
银行优秀员工事迹
2014/02/06 职场文书
C++程序员求职信范文
2014/04/14 职场文书
班主任对学生的评语
2014/04/26 职场文书
孩子教育的心得体会
2014/09/01 职场文书
2015年转正工作总结范文
2015/04/02 职场文书
幼儿园新生开学寄语
2015/05/27 职场文书
MySQL创建高性能索引的全步骤
2021/05/02 MySQL