zoukankan      html  css  js  c++  java
  • python编码问题

    1.1. 解决文件模式python代码出现中文乱码问题(如:记事本)

    (1)使用中文需要在第一行声明编码:#coding=utf-8

    (2)中文字符串前要加:u  如:u中文

    (3)文件另存为”UTF-8”编码格式

    说明 :raw_input中的中文除外,raw_input的中文方法如下:

               s=raw_input(“中文”.decode(“utf-8”).encode(“gbk”))

    1.2. 常见的编码格式

    ASCII:美国信息交换标准代码(American Standard Code for Information Interchange),包含256个字符

    GB2312:适用于汉字

    GBK:是汉字编码标准之一,是在GB2312基础上扩展的

    ANSI:windows操作系统有关,像win7简体中文版中是GBK

    Unicode:世界所有字符的编码

    Utf-8:Unicode的一种实现方式;把汉字或其他字符保存为1-3个字节;完全兼容ASCII(256个字符)  (优点:节省空间)

    Utf-16:保存为2个字节

    Utf-32:保存为4个字符 (缺点:很占内存) 

    1.3. 查看/获取系统的编码

    >>> import sys

    >>> sys.getdefaultencoding() 

    'ascii'

    1.4. 设置/修改系统的编码

    >>> import sys

    >>> reload(sys)  #需要新加载一下 原因在下面:

    <module 'sys' (built-in)>

    >>> sys.setdefaultencoding("gbk")

    >>> sys.getdefaultencoding()

    'gbk'

    说明:为什么要reload sys模块?

          在site.py文件里有这样一段代码:

               if hasattr(sys,"setdefaultencoding"):

                   del sys.setdefaultencoding

          在sys加载后,setdefaultencoding方法被删除了,所以我们要通过重新导入sys来设置系统编码

  • 相关阅读:
    缺席多年的东哥,重回博客了
    使用VMware安装CentOS 7
    Linux CentOS 7 搭建 Tomcat 8 服务器
    海思HI3518EV200+AR0130开发板DIY——前篇
    Keyshot+AD渲染PCB效果图
    ESP8266/ESP32模块晶振频偏调试
    关于摄像头PCB图设计经验谈
    docker容器虚拟化技术
    数据分析章节(一):初始数学之美
    Nginx:反向代理
  • 原文地址:https://www.cnblogs.com/reyinever/p/7881833.html
Copyright © 2011-2022 走看看