Python中文编码

ChatGPT 3.5 国内中文镜像站免费使用啦

一.前言

零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门

       Python 到目前为止,一共有两个版本,分别是 2.x 和 3.x 版本,根据官方正式通知 2020 年停止对 Python 2.x更新和维护,所以正在学习Python 3.x的小伙伴应该暗中庆幸一波。

图片[1]-Python中文编码-猿说编程

       Python2.x 版本默认采用ASCLL编码,Python3.x 版本则默认采用 UTF-8 编码,两者有什么区别呢?

       唯一区别就是如果代码或者注释中含有中文,ASCLL 编码会出现乱码,UTF-8编码却可以正常显示中文,即 Python2.x 版本中文显示不正常,Python3.x 版本正常。

二.为什么会出现乱码

       编码和解码需要一一对应,把对应的数据编码之后,只有通过对应的方式解码才能得到正确的数据,反之得到的就是错误数据,乱码

       来个比喻 : 隔壁老王设了一个wifi密码:abcdefgh,你想使用老王密码,老王如果不告诉你,你实验100次都弄不出正常密码(杠精说:我用wifi万能钥匙)

图片[2]-Python中文编码-猿说编程

三.如何解决乱码

       解决乱码很简单,找到与编码正确的方式解码就可以了。我们继续回到 helloword 项目,代码如下:


# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:helloworld.py
@Time:2021/3/14 20:37
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!

"""

print("世界你好")

       第一行注释是告诉系统,这是一个 Python 可执行程序,Linux/OS X系统有效,Windows 系统会忽略这个注释;

       第二行注释是表示按照 UTF-8 编码读取源代码,虽然在 Pycharm 中默认 UTF-8,该行代码可有可无,如果把py文件放到其他环境编译呢?如果其他环境不是UTF-8,一旦有中文,必然乱码。

      其他代码都是注释的无用代码,可以忽略不计!

四.重点总结

  •       1.如果编码和解码方式不对应,会出现乱码
  •       2.# -*- coding:utf-8 _*- 写在文件开始位置,默认指定文件编码格式为utf-8

      值得注意的是:其实编码也算是头疼的问题,在以后的开发中你必然会遇到很多编解码的坑爹事故,因为字符编码涉及ascll , utf-8 , unicode , gbk , gb18030………

五.猜你喜欢

  1. Python 简介
  2. Python Pycharm Anacanda 区别
  3. Python2.x 和 Python3.x,如何选择?
  4. Python 配置环境
  5. Python Hello World入门
  6. Python 代码注释

ChatGPT 3.5 国内中文镜像站免费使用啦
© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容