代码实例讲解python3的编码问题


Posted in Python onJuly 08, 2019

python3的编码问题。

打开python开发工具IDLE,新建‘codetest.py'文件,并写代码如下:

import sys

print (sys.getdefaultencoding())

代码实例讲解python3的编码问题

F5运行程序,打印出系统默认编码方式

代码实例讲解python3的编码问题

将字符串从str格式编码程bytes格式,修改代码如下:

import sys

print (sys.getdefaultencoding())

s = '你好'

print (type(s))

b = s.encode('utf-8')

print (type(b))

print (b)

 

其中b = s.encode('utf-8') 等同于b = s.encode() ,因为系统默认编码方式就是utf-8

代码实例讲解python3的编码问题

F5运行程序,打印出内容如下,中文必须用utf-8编码,因为ascii码表示不了所有汉字,这里暂时不介绍gbk编码,现在用得很少了,utf-8使用3个字节表示一个汉字,ascii使用一个字节表示一个英文字母或字符。

代码实例讲解python3的编码问题

解码就是从bytes变回str的过程,修改代码如下:

import sys

 

print (sys.getdefaultencoding())

s = '你好'

print (type(s))

b = s.encode('utf-8')

print (type(b))

print (b)

se = b.decode('utf-8')

print (se)

print (type(se))

 

代码实例讲解python3的编码问题

F5运行程序,打印内容如下图,bytes转回str

代码实例讲解python3的编码问题

utf-8编码兼容ascii,当既有中文又有英文时使用encode('utf-8'),英文还是占一个字节,中国三个字节,另外当py文件注释有中文时,需要在头部添加

#coding:utf-8

代码实例讲解python3的编码问题

Python 相关文章推荐
gearman的安装启动及python API使用实例
Jul 08 Python
详解Python中最难理解的点-装饰器
Apr 03 Python
详解Python中 sys.argv[]的用法简明解释
Dec 20 Python
python3 打开外部程序及关闭的示例
Nov 06 Python
python打印9宫格、25宫格等奇数格 满足横竖斜相加和相等
Jul 19 Python
Django如何简单快速实现PUT、DELETE方法
Jul 24 Python
python找出列表中大于某个阈值的数据段示例
Nov 24 Python
使用pygame编写Flappy bird小游戏
Mar 14 Python
为什么是 Python -m
Jun 19 Python
python 如何利用argparse解析命令行参数
Sep 11 Python
python 生成器需注意的小问题
Sep 29 Python
pandas求平均数和中位数的方法实例
Aug 04 Python
Python参数类型以及常见的坑详解
Jul 08 #Python
python里运用私有属性和方法总结
Jul 08 #Python
python设计微型小说网站(基于Django+Bootstrap框架)
Jul 08 #Python
python字符串查找函数的用法详解
Jul 08 #Python
python提取log文件内容并画出图表
Jul 08 #Python
Python OpenCV 使用滑动条来调整函数参数的方法
Jul 08 #Python
使用Python opencv实现视频与图片的相互转换
Jul 08 #Python
You might like
解决CodeIgniter伪静态失效
2014/06/09 PHP
php定期拉取数据对比方法实例
2019/09/22 PHP
javascript window对象属性整理
2009/10/24 Javascript
JS打印gridview实现原理及代码
2013/02/05 Javascript
js判断手机和pc端选择不同执行事件的方法
2015/01/30 Javascript
jquery表单验证插件(jquery.validate.js)的3种使用方式
2015/03/28 Javascript
深入探究使JavaScript动画流畅的一些方法
2015/06/30 Javascript
JavaScript实现点击按钮就复制当前网址
2015/12/14 Javascript
JavaScript利用HTML DOM进行文档操作的方法
2016/03/28 Javascript
浅谈jQuery 选择器和dom操作
2016/06/07 Javascript
微信小程序 列表的上拉加载和下拉刷新的实现
2017/04/01 Javascript
Vue 实现树形视图数据功能
2018/05/07 Javascript
vuejs实现标签选项卡动态更改css样式的方法
2018/05/31 Javascript
在vue项目中集成graphql(vue-ApolloClient)
2018/09/08 Javascript
javascript中的this作用域详解
2019/07/15 Javascript
vue项目中播放rtmp视频文件流的方法
2020/09/17 Javascript
vue vant中picker组件的使用
2020/11/03 Javascript
[01:14]2014DOTA2展望TI 剑指西雅图newbee战队专访
2014/06/30 DOTA
python实现用户登陆邮件通知的方法
2015/07/09 Python
Python入门学习之字符串与比较运算符
2015/10/12 Python
python函数的5种参数详解
2017/02/24 Python
Python中进程和线程的区别详解
2017/10/29 Python
Pycharm取消py脚本中SQL识别的方法
2018/11/29 Python
Python使用到第三方库PyMuPDF图片与pdf相互转换
2019/05/03 Python
tensorboard显示空白的解决
2020/02/15 Python
python logging.basicConfig不生效的原因及解决
2020/02/20 Python
logging level级别介绍
2020/02/21 Python
Jupyter Notebook的连接密码 token查询方式
2020/04/21 Python
Numpy 多维数据数组的实现
2020/06/18 Python
市三好学生主要事迹
2014/01/28 职场文书
寄语是什么意思
2014/04/10 职场文书
合作协议书
2014/04/23 职场文书
教师对照四风自我剖析材料
2014/09/30 职场文书
公司年会晚会开幕词
2019/04/02 职场文书
送给教师们,到底该如何写好教学反思?
2019/07/02 职场文书
Vue自定义铃声提示音组件的实现
2022/01/22 Vue.js