一:Python2

  1. python2默认编码格式是ascii码,解释器解释代码时会将代码以及代码中的字符串等转换成ascii码再执行。这样会导致字符串输出或传输时,与当前环境编码格式不同的话会显示乱码。
  2. 我们可以通过 代码文件开头编码声明  改变编码格式,告知解释器 以什么编码格式 解释文件内容,例如:在文件头声明了 #_*_coding:utf-8*_
  3. 在有#_*_coding:utf-8*_的情况下,字符串变量如果写成name=u"字符串"格式,那这个字符串就是unicode格式解释和保存的;不加这个u就是utf-8格式

二:Python3

  1. python3默认文件编码格式就是utf-8,所以可以直接在代码中写中文,不需要文件头声明编码了。
  2. 字符串变量默认会被unicode格式解释和存储,不需要再显式加 u 前缀。

三:转码

  一个原则:所有字符集的转换,都要先decode成为unicode,再encode成为其他格式,不能直接转其他格式,否则会解析失败成为乱码。

Python字符编码和转码的更多相关文章

  1. Python字符编码与转码

    字符编码与转码 注: 该图转自 http://www.cnblogs.com/luotianshuai/p/5735051.html. Python2 解码,编码 #Python2 #-*- codi ...

  2. python 字符编码与转码

    一. 字符编码 ASCII: 一个字节,最多能表示255个字符 GB2312(1980年):一共收录了7445个字符,包括6763个汉字和682个其它符号. GBK1.0(1995年):收录了2188 ...

  3. Python中字符编码及转码

    python 字符编码及转码 python 默认编码 python 2.X 默认的字符编码是ASCII, 默认的文件编码也是ASCII python 3.X 默认的字符编码是unicode,默认的文件 ...

  4. Python基础-字符编码与转码

    ***了解计算机的底层原理*** Python全栈开发之Python基础-字符编码与转码 需知: 1.在python2默认编码是ASCII, python3里默认是utf-8 2.unicode 分为 ...

  5. Python自动化 【第三篇】:Python基础-集合、文件操作、字符编码与转码、函数

    1.        集合 1.1      特性 集合是一个无序的,不重复的数据组合,主要作用如下: 去重,把一个列表变成集合实现自动去重. set可以看成数学意义上的无序和无重复元素的集合,因此,两 ...

  6. 【python】-- 字符串、字符编码与转码

    字符串 字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串. 创建字符串很简单,只要为变量分配一个值即可:访问子字符串,可以使用方括号来截取字符串: var1 ...

  7. python基础之 列表、元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码

    本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...

  8. 小白的Python之路 day2 字符编码和转码

    字符编码和转码 详细文章: http://www.cnblogs.com/yuanchenqi/articles/5956943.html http://www.diveintopython3.net ...

  9. Python字符编码讲解

    声明:本文参考 Python字符编码详解 在计算机中我们不管用什么语言和程序,最终数据在计算机中的都是字节码(也就是01形式)的形式存在的,如果 计算机直接把字节码显示在屏幕上,很明显一般人看不懂字节 ...

随机推荐

  1. streamsets 源码构建

    依赖构建工具 git 1.9+ oracle jdk  8 docker 1.10+ maven  3.3.9+ nodejs npm grunt-cli md5sum 预备构建任务 data col ...

  2. <Tree> 110 124

    110. Balanced Binary Tree 方法是如果我们发现子树不平衡,则不计算具体的深度,而是直接返回-1.那么优化后的方法为:对于每一个节点,我们通过checkDepth方法递归获得左右 ...

  3. Codeforces Round 573 (Div.1) 题解

    这场怎么说呢……有喜有悲吧. 开场先秒了 A.看到 B,感觉有点意思,WA 了 2 发后也过了. 此时还在 rk 前 200. 开 C,一看就不可做.跟榜,切 D 人数是 C 的两倍. 开 D.一眼感 ...

  4. 关于Dev-C++用户所必须知道的知识

    开启这几个警告选项,才能拥有GCC编译器的较为全面的报错和警告 另外,目前Dev-C早已停止更新(停滞在版本号5.1,内置的GCC为4.9版本),且使用其检测数组变量也挺麻烦的,实在不推荐使用.

  5. Codeforces Round #607 (Div. 1) Solution

    从这里开始 比赛目录 我又不太会 div 1 A? 我菜爆了... Problem A Cut and Paste 暴力模拟一下. Code #include <bits/stdc++.h> ...

  6. .NET Core应用中使用分布式缓存及内存缓存

    .NET Core针对缓存提供了很好的支持 ,我们不仅可以选择将数据缓存在应用进程自身的内存中,还可以采用分布式的形式将缓存数据存储在一个“中心数据库”中.对于分布式缓存,.NET Core提供了针对 ...

  7. Linux 分区管理器

    下面的列表没有特定的排名顺序.大多数分区工具应该存在于 Linux 发行版的仓库中. GParted 这可能是 Linux 发行版中最流行的基于 GUI 的分区管理器.你可能已在某些发行版中预装它.如 ...

  8. Ajax 跨域请求,Chrome 无法显示 Set-Cookie

    在使用 Ajax 进行跨域请求时,前后端均已设置 withCredentials = true,但 Chrome 前端响应无法显示 Set-Cookie. 一开始以为 Cookie 并没有设置成功,但 ...

  9. WPF XAML的读法

    XAML 一直以为读作X-A-M-L 不过 一直都是念错了 正确念法:ZAMMEL 类似:ZeIMO [平音]

  10. Java 8——日期时间工具库(java.time)

    一.前言 在介绍Java SE 8中新的日期时间库前,先了解下Java 8之前的日期时间工具的诟病. 在Java SE 8前,日期时间工具库在java.util包中,包括: java.util.Dat ...