一、进制

1、二进制

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

定义

二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是"逢二进一"

 

转换方式

二进制转换为十进制:

把二进制数按权展开、相加即得十进制数。

 

python基础2--进制、字符编码和文件处理 Python 第1张

十进制转换为二进制:

十进制数除2取余法,即十进制数除2,余数为权位上的数,得到的商值继续除2,依此步骤继续向下运算直到商为0为止

python基础2--进制、字符编码和文件处理 Python 第2张

 

python中的方法:

python基础2--进制、字符编码和文件处理 Python 第3张

 

2、16进制

定义

16进制,英文名称Hexadecimal(简写Hex), 在数学中是一种逢16进1的进位制。一般用数字0到9和字母A到F(或a~f)表示,其中:A~F表示10~15,这些称作十六进制数字

 

转换方式和二进制和十进制转换方式类似。

 

16进制转10进制:

1000=1X16^3(16的3次方)+0X16^2(16的2次方)+0X16(16的1次方)+0X1(16的0次方)=4096。

FFF=15(16^2) + 15(16^1) + 15*(16^0) = 4095。

 

10进制转16进制:

除16取余数得最低1位,然后把商继续除得第2位,直到商等于0

python基础2--进制、字符编码和文件处理 Python 第4张

 

python中的方法

python基础2--进制、字符编码和文件处理 Python 第5张

 

 

 

二、字符编码

 

ASCII码

用1个字节Bytes(8位二进制)代表一个字符

 

GB2312 & GBK

2Bytes代表一个中文字符,1Bytes表示一个英文字符

 

 

Unicode

能够兼容万国字符

 

 

UTF-8

对英文字符只用1Bytes表示,对中文字符用3Bytes,对其他生僻字用更多的Bytes去存

 

 

三、文件处理

 

1、文件的打开和关闭

open():打开文件

close():关闭文件

python基础2--进制、字符编码和文件处理 Python 第6张

 

用with as 防止忘记不关闭:

python基础2--进制、字符编码和文件处理 Python 第7张

 

2、操作模式

r 只读模式

python基础2--进制、字符编码和文件处理 Python 第8张

 

w 创建模式,若文件已存在,则覆盖旧文件

python基础2--进制、字符编码和文件处理 Python 第9张

 

a 追加模式,新数据会写到文件末尾

python基础2--进制、字符编码和文件处理 Python 第10张

 

循环文件

python基础2--进制、字符编码和文件处理 Python 第11张

 

3、常用方法

f.tell() 读取指针的位置

f.seek(0) 设置指针的位置

 

4、文件修改的两种方式

 

1、将硬盘存放的该文件的内容全部加载到内存,在内存中是可以修改的,修改完毕后,再由内存覆盖到硬盘

python基础2--进制、字符编码和文件处理 Python 第12张

 

2、将硬盘存放的该文件的内容一行一行地读入内存,修改完毕就写入新文件,最后用新文件覆盖源文件。

python基础2--进制、字符编码和文件处理 Python 第13张

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄