位置: 编程技术 - 正文

Python3如何解决字符编码问题详解(python3m)

编辑:rootadmin

推荐整理分享Python3如何解决字符编码问题详解(python3m),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python3-gi,python3gui,python3m,python3.,python3 cgi,python3gui,python3gui,python3m,内容如对您有帮助,希望把文章链接给更多的朋友!

编码

因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是(二进制=十进制),如果要表示更大的整数,就必须用更多的字节。比如两个字节可以表示的最大整数是,4个字节可以表示的最大整数是。

由于计算机是美国人发明的,因此,最早只有个字母被编码到计算机里,也就是大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码,比如大写字母A的编码是,小写字母z的编码是。

Python3字符编码

Python3 最重要的一项改进之一就是解决了 Python2 中字符串与字符编码遗留下来的这个大坑。

Python2 字符串设计上的一些缺陷:

使用 ASCII 码作为默认编码方式,对中文处理很不友好。 把字符串的牵强地分为 unicode 和 str 两种类型,误导开发者

当然这并不算 Bug,只要处理的时候多留心也可以避免这些坑。但在 Python3 两个问题都很好的解决了。

首先,Python3 把系统默认编码设置为 UTF-8

Python3如何解决字符编码问题详解(python3m)

然后,文本字符和二进制数据区分得更清晰,分别用 str 和 bytes 表示。文本字符全部用 str 类型表示,str 能表示 Unicode 字符集中所有字符,而二进制字节数据用一种全新的数据类型,用 bytes 来表示。

str

bytes

Python3 中,在字符引号前加‘b',明确表示这是一个 bytes 类型的对象,实际上它就是一组二进制字节序列组成的数据,bytes 类型可以是 ASCII范围内的字符和其它十六进制形式的字符数据,但不能用中文等非ASCII字符表示。

bytes 类型提供的操作和 str 一样,支持分片、索引、基本数值运算等操作。但是 str 与 bytes 类型的数据不能执行 + 操作,尽管在py2中是可行的。

python2 与 python3 字节与字符的对应关系

python2 python3 表现 转换 作用 str bytes 字节 encode 存储 unicode str 字符 decode 显示

encode 与 decode

str 与 bytes 之间的转换可以用 encode 和从decode 方法。

encode 负责字符到字节的编码转换。默认使用 UTF-8 编码准换。

decode 负责字节到字符的解码转换,通用使用 UTF-8 编码格式进行转换。

总结

标签: python3m

本文链接地址:https://www.jiuchutong.com/biancheng/375545.html 转载请保留说明!

上一篇:Python制作刷网页流量工具(用python写网页)

下一篇:深入理解python中的select模块(深入浅出python)

  • 房屋买卖收税
  • 啥叫反倾销税
  • 待摊费用和无形资产摊销
  • 金税盘维护费全额抵扣吗
  • 毛利率和主营利润率的区别
  • 房屋出租怎么交税?
  • 企业所得税账务处理
  • 住宅租给公司办什么手续
  • 个人劳务费发票可以委托其他人去开吗
  • 境外代扣代缴的税最后归谁所有
  • 小规模纳税人定额发票累计领用金额
  • 缴纳社保需要什么东西
  • 计提工资是计提当月的还是上个月的
  • 持有至到期投资是什么意思
  • 利润分配财务处理
  • 劳务报酬的个税计算方法
  • 最新w10系统专业版
  • 研发费加计扣除申报表怎么填
  • 支付工程款需要什么财务手续
  • 如何在win10桌面上显示时钟
  • QQExternal.exe是什么进程?QQExternal.exe进程为什么被运行?
  • 公司帮人代缴社保怎么做账
  • 电脑cn是什么意思
  • 多付货款退回的会计分录
  • 龙骨花的养殖方法作用
  • 电脑fs0是什么
  • php怎么执行sql语句
  • 以旧换新方式销售货物,以实际收取的价格
  • yolo部署到服务器
  • php替换文本指定内容
  • 框架开源
  • 人脸口罩检测系统
  • 建筑工程收到材料发票怎么做账
  • break能结束一个函数的调用
  • 购进原材料用于生产免税产品
  • 图书为什么不能退货
  • 行政事业单位福利费列支范围及标准2023
  • python中@是什么意思
  • 企业的业务招待费属于什么费用
  • 假退库会计分录
  • 什么情况下会被判死刑
  • 小规模纳税人免税额度是多少
  • 员工辞退补偿金计算
  • 消防工程改造方案
  • 信用减值损失和资产减值损失的区别
  • 销售设备提供安装服务
  • 小规模纳税人附加税怎么算
  • 安装购买的材料怎么做账
  • 企业收到的政府部门工作经费
  • 支出记账凭证单手写
  • 什么叫递延收益和其他收益
  • 收到在建工程会计分录
  • 补交以前年度环保税
  • 开具发票的单位名称与实际收款不一致?
  • 一般纳税人在外地预缴税款,预缴多了需不需退税
  • 广告制作费属于现代服务吗
  • 现成的财务报表
  • 企业支付的技术转让费计入管理费用吗
  • 什么是折旧费
  • mysql里面的数据类型
  • mysql存储过程判断输入判断类型
  • 运行软件时遇到的问题
  • centos进入
  • 网络硬盘在哪
  • 2021年win10累积更新
  • win7旗舰版系统怎么样
  • vmware虚拟机Linux扩展硬盘
  • linux device driver
  • win8怎么查看系统信息
  • windows7 dns
  • win10系统桌面图标有白色方框的解决方法图...
  • bootstrap模态框按钮无响应
  • java怎样学
  • linux中crontab
  • 有关的拼音
  • 中国的外籍
  • 现在哪个行业的税负很重了
  • 软件销售税率13还是6还是9
  • 大企业如何做好工作
  • 重庆市国家税务局电子税务局官网登录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设