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 Web服务器Tornado使用小结
May 06 Python
使用Python发送邮件附件以定时备份MySQL的教程
Apr 25 Python
python爬虫入门教程--利用requests构建知乎API(三)
May 25 Python
Python输出带颜色的字符串实例
Oct 10 Python
python简单图片操作:打开\显示\保存图像方法介绍
Nov 23 Python
Python 读写文件的操作代码
Sep 20 Python
python获取中文字符串长度的方法
Nov 14 Python
pyttsx3实现中文文字转语音的方法
Dec 24 Python
关于Python核心框架tornado的异步协程的2种方法详解
Aug 28 Python
使用wxpy实现自动发送微信消息功能
Feb 28 Python
jupyter notebook 的工作空间设置操作
Apr 20 Python
详细介绍python操作RabbitMq
Apr 12 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
文件上传类
2006/10/09 PHP
用PHP中的 == 运算符进行字符串比较
2006/11/26 PHP
php下封装较好的数字分页方法
2010/11/23 PHP
PHP中创建图像并绘制文字的例子
2014/11/19 PHP
php读取文件内容到数组的方法
2015/03/16 PHP
全新Mac配置PHP开发环境教程
2016/02/03 PHP
PHP使用php-resque库配合Redis实现MQ消息队列的教程
2016/06/29 PHP
Yii2.0使用阿里云OSS的SDK上传图片、下载、删除图片示例
2017/09/20 PHP
阿里对象存储OSS在laravel框架中的使用方法
2019/10/13 PHP
常见表单重复提交问题整理及解决方法
2013/11/13 Javascript
jquery实现公告翻滚效果
2015/02/27 Javascript
JS实现网页上随滚动条滚动的层效果代码
2015/11/04 Javascript
JavaScript编写简单的计算器
2015/11/25 Javascript
javascript轮播图算法
2016/10/21 Javascript
jQuery树控件zTree使用方法详解(一)
2017/02/28 Javascript
vue2中使用sass并配置全局的sass样式变量的方法
2018/09/04 Javascript
JS实现导航栏楼层特效
2020/01/01 Javascript
nodejs脚本centos开机启动实操方法
2020/03/04 NodeJs
three.js 如何制作魔方
2020/07/31 Javascript
微信小程序实现点击生成随机验证码
2020/09/09 Javascript
浅谈Vue使用Cascader级联选择器数据回显中的坑
2020/10/31 Javascript
Python中使用strip()方法删除字符串中空格的教程
2015/05/20 Python
Python判断变量是否为Json格式的字符串示例
2017/05/03 Python
django 发送手机验证码的示例代码
2018/04/25 Python
python3 实现爬取TOP500的音乐信息并存储到mongoDB数据库中
2019/08/24 Python
pycharm进入时每次都是insert模式的解决方式
2021/02/05 Python
伦敦香水公司:The London Perfume Company
2019/11/13 全球购物
澳大利亚领先的男装零售连锁店:Lowes
2020/08/07 全球购物
幼儿园义卖活动方案
2014/01/17 职场文书
科长竞争上岗演讲稿
2014/05/12 职场文书
诉讼授权委托书
2014/10/15 职场文书
2014年健康教育工作总结
2014/11/20 职场文书
创业计划书之便利店
2019/09/05 职场文书
用Python提取PDF表格的方法
2021/04/11 Python
MySQL中LAG()函数和LEAD()函数的使用
2022/08/14 MySQL
Windows11 Insider Preview Build 25206今日发布 更新内容汇总
2022/09/23 数码科技