zoukankan      html  css  js  c++  java
  • python2与3字符编码的区别

    代码详情 Python2执行情况 Python3执行情况
    # coding:gbk
    print('中')
    终端:utf8
    乱码 不乱码
    # coding:utf8
    print('中')
    终端:utf8
    不乱码 不乱码
    # coding:gbk
    print(u'中')
    终端:utf8
    不乱码 不乱码
    # coding:utf8
    print(u'中')
    终端:utf8
    不乱码 不乱码

    在Python2中如果指定了字符编码,那么内存存取就会按照指定的字符编码去入内存。解释或去执行时就要按照指定了的字符编码去解释,否则就会乱码。 否则可以在定义变量前面加上u,这样变量就会以unicode编码存入内存。

    如:

    #coding:gbk
    
    name = "爸爸"
    

    但在Python3中就不会有这样的问题,因为无论你指定了什么字符编码,在内存存取时都会使用Unicode编码去入内存,Unicode编码可以和任意的字符编码相互转换,并在读取时按照所需的编码区读取,这样就很好解决了字符编码的问题

  • 相关阅读:
    负载均衡机制
    测试先行
    MVC模式在Java Web应用程序中的实例
    MVC模式学习
    Java反射机制
    软件开发火狐自动填写用户名和密码
    23种设计模式概述
    站立会议总结02
    站立会议总结01
    买书最低价问题
  • 原文地址:https://www.cnblogs.com/aden668/p/11317055.html
Copyright © 2011-2022 走看看