python语法_字符编码

二进制:

ascll:只能存英文和拉听字符,一个字符占一个字节,8位

gb2312:只能存6700多个中文,1980年

gbk1.0:能存2万多字符,1995年

gbk18030:2000 27000万字符

unicode:统一各个国家的编码,万国码。每个字节占四个字节,

最初表现形式utf-32,一个字符占4个字节,后面出现了utf-16,一个字符占2个字节或者2个以上(65535个字符),

最后出现utf-8:英文用ascll来存,一个中文占三个字节,其他文字有占2个字节的。

所有的在中国发行的软件都必须支持gb18030字符编码。

计算机里,unicode 称呼为万国码,可以作为中间语言用于不同编码的软件进行交互。

把gpk 转成unicode,为编码encode,

gbk将unicode编码的代码转换成gbk能理解的,为解码decode

in python2

默认编码为ASCII编码,写中文的时候,必须先声明 -*-coding:utf8-*-

GBK 转换成UTF-8流程:

1 gbk 通过decode 成unicode编码.

2 unicoe 通过encode 成utf-8编码

in python3

所有文件的默认字符编码为unicode,所以在编码时可以直接编码成所需的编码类型,不需要先decode了

但是如果unicode 去转换成gbk,显示的就是bytes了,其实unicode默认就支持中文的,没什么非常的必要,不需转成gbk  

encode 在编码的同时,会把数据转换成bytes类型

decode 在解码的同时,会把bytes转换成字符串类型

b =bytes 字节类型 一种数据类型,不同

原文地址:https://www.cnblogs.com/kevingm/p/10023506.html

时间: 2024-10-16 07:20:39

python语法_字符编码的相关文章

Python基础day-5[字符编码,文件处理,函数]

字符编码: 为什么要有字符编码?字符编码是为了让计算机能识别我们人写的字符,因为计算机只认识高低电平,也就是二进制数"0","1". 字符编码其实就是在完成一件,字符====>数字的翻译过程. ASCII: 最早计算机是美国发明的,所以最早诞生的ASCII码也是基于英文考虑的.ASCII码:一个Bytes代表一个字符,1Bytes=bit.最早的ASCII只用到后七位. 127个数字,已经完全能代表键盘了,后来又把127号之后的空位来表示新的字母.符号,还加入

Python中的字符编码问题

初学Python,本身就在一些语句处有些迷惑,如 a = u'你好',不知加上这个Unicode参数有何作用.一直到做爬虫抓取新闻时,在cmd的输出上总是出现错误.经过检索相关知识后,对一些编码问题做个小总结,其中参杂个人猜测,难免会有错误,以后再慢慢修改了. 1.一定要声明#coding=XXX吗? 首先.py文件中,编码默认是ASCII的,一旦py文件中出现了中文类似编码,IDE就会提示 也就是提示文中出现了非ASCII,建议在文件开始制定编码,当然我们常用的是#coding:utf8 (貌

Python不归路_字符编码操作

文件操作补充 上篇随笔中写了文件操作的几个方法,其中truncate()方法遗漏,truncate()方法作用是截取内容,f.truncate()不带参数会清空文件内容,带参数表示截取从零到参数的位置 字符编码 在<Python不归路_零基础学习二>中我们已经学习了一些编码的知识,比如ASCII一共有255个符号,Unicode中,中文字符占两个字节,英文占一个字节,utf-8是unicode的优化方案,中文字节占三个字符.不同字符编码之间需要相互转化才能正常读取.encode和decode,

python学习笔记_字符编码

1.字符编码 ASCII码:一个byte=8位,128位中表示英文字母大小写.罗马字符等 GB2312.GBK.GB18030(中国自己的)表示汉字,早起一般移动设备    支持到GB2312 Unicode:万国码,2个byte=16位表示所有字符 UTF-8:可动态变化长度的编码.存英文1byte,中文3byte.python3字符集位UTF-8.python2默认编码是ascII码,若想在python2中支持中文等字符,在代码顶部增加#-*-coding:utf-8-*- 2.符号语法 单

python基础语法_字符串编码

Python常用字符编码 http://www.cnblogs.com/schut/p/8406897.html Python常见字符编码间的转换 在字符串写入文件时,有时会因编码问题导致无法写入,可在open方法中指定encoding参数 chfile = open(filename, 'w', encoding='utf-8') open()默认新建的是系统文件的编码格式,比如创建了一个txt文件,则该文件在macOS中是ascii格式字符串,但是写入时write()要求使用utf-8格式字

Python之Win字符编码详解

Win下的dos窗口输出中文 Python2.7默认字符编码是ascii格式,即使指定字符编码为UTF-8也未必能够输出中文,测试如下: #_*_coding:utf-8_*_# 定义一个变量内容为中文,字符集为UTF-8temp = "中文"# 输出变量temp的内容print(temp) 用win下的dos窗口执行这个脚本,看看输出出来的是否为中文 C:\Users\anshe>python F:\Python_code\sublime\Day02\print.py涓枃  

python 基础之字符编码和文件处理

一.字符编码 (1)计算机基础知识 (2)python 解释器执行py文件的原理 <1>python 解释器启动 <2>python解释器相当于一个文本编辑器,打开txt.py文件,从硬盘把txt.py文件内容读到内存中 <3>python解释器解释刚刚加载到内存中的txt.py的代码(在该阶段及执行时,才会识别python的语法,执行文件内存代码,执行到name="egon",会开辟内存空间存放字符串"egon")  (3)py

python基础3 字符编码

本节主要内容: 基本概念 ASCII及其扩展 中文字符编码 unicode 注释 参考网页 基本概念 计算机中储存的信息都是二进制的0/1串,当我们要在计算机中存储诸如英文.中文.标点符号等字符时,需要先把字符转化成二进制的0/1串之后再保存到计算机中:而当我们要读取保存在计算机中的信息时,需要通过一定的方法把里面的二进制0/1串转化成为原先的字符,然后再通过显示器等渠道进行显示. 这里涉及到字符编码的两个基本概念: 字符集(Character Set):指系统支持的所有字符的集合.字符包括涉及

第五篇:python基础之字符编码

1. 计算机基础知识(三幅图) 2. 文本编辑器存取文件的原理(nodepad++,pycharm,word) 打开编辑器就打开了启动了一个进程,是在内存中的,所以在编辑器编写的内容也都是存放与内存中的,断电后数据丢失 因而需要保存到硬盘上,点击保存按钮,就从内存中把数据刷到了硬盘上. 在这一点上,我们编写一个py文件(没有执行),跟编写其他文件没有任何区别,都只是在编写一堆字符而已.  3. python解释器执行py文件的原理 ,例如python test.py 1.第一阶段,python解