系列文章目录
第一章 Python基础入门之Hello World
第一章 Python基础入门之变量与数据类型
第一章 Python基础入门之ASCII(字符编码和二进制)
前言
Python系列学习
一、相关内容
二进制(0和1)的表达
#二进制(0和1):
#128 64 32 16 8 4 2 1 (越多往左推)
# 1 1 1 1 1 1 1 1 即是字符编码:“11111111” 等于128+64+32+16+8+4+2+1=255
# 1 0 0 1 0 1 0 0 即是字符编码:“10010100” 等于128+16+4=148
#通过不同的0和1组合就可以得到想要的数值
print("0和1")
字符串、特殊符号呢?如何表达出来?
ASCII码(美国标准信息交换代码)应运而生了。ASCII基于拉丁字符的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用8位(如上8位)表示(一个字节),即:2**8=256-1,所有,ASCII码最多只能表示255个字符。
关于中文
为了设计汉字,程序员设计了用于简体中文的GB2312和用于繁体中文的big5
1980年GB2312收录7445个汉字/符号(中文出版)
1980年GBK1.0收录27484个汉字/符号
1980年GB18030收录27484个汉字/符号,以及藏文、蒙文、维吾尔文等
逐渐发展为Unicode(万国码、统一码),但是unicode为2个字节,而ascii码为一个字节,相对上unicode使内存增加了。到现在在unicode的基础上出现了utf-8码,当存英文CN时是1个字节,当存中文ZN时是3个字节。
——注:字符最多8位,数字不限制。
不同版本Python ASCII码的处理方式
python2默认是ascii码,而python3默认是utf-8码,所以在python2中输入(print)中文时,需要先写声明:
-*- coding:utf-8 -*-