1. 程式人生 > >Python學習筆記015——文件file的常規操作之二(二進制文件)

Python學習筆記015——文件file的常規操作之二(二進制文件)

cde enc blog 模式 1byte 二進制文件 整數 style rst

1 字節(byte)的單位

1KB = 2*10 Bytes

1MB = 1KB * 1024 = 2**20 Bytes

1GB = 1KB * 1K * 1K = 2**30 Bytes

# 1byte = 8bit(位)

2 二進制文件

二進制文件是以字節(byte) 為單位存儲的,

不以換行符(\n)為單位進行區分內容的文件讀寫方法

3 打開模式mode

’ b ‘

4 字節串 bytes

字節串也稱之為字節序列

存儲時以字節為單位的數據

字節串時不可變的字節序列

(如果不好理解,可以參考元組)

備註:

字節是0~255(2**8-1)之間的整數(0b11111111, 0b00000000)

字符串存的數是1~65535(2**16-1)之間的數(UNICODE16/UNICODE32)

5 創建字節串

在非特殊情況下,在創建字符串時,單引號和雙引號具有相同的作用

5.1 創建空字節串

創建空字符串有兩種方式

方式1:

>>> b = b""
>>> b
b‘‘
>>> B = B""
>>> B
b‘‘ 

方式2:

>>> D = bytes()
>>> D
b‘‘

5.2 創建非空字節串

>>> a = b"ABCD"
>>> b = b"ABCD"
>>> c = b‘‘‘ABCD‘‘‘
>>> d = b
\x41\x42 >>> a bABCD >>> b bABCD >>> c bABCD >>> d bAB

6 字節串的構造(創建)函數 bytes

bytes() :創建一個空字節串, 等同於b‘‘
bytes(整型可叠代對象) : 用可叠代對象初始化一個字節串(數值必須是0~255的整數)
bytes(整數n) : 生成n個值為0的字節串
bytes(字符串, encoding=‘utf-8‘) :用字符串轉換編碼生成一個字節串

示例

>>> b = bytes(range(0x41,0x41+26))
>>> b bABCDEFGHIJKLMNOPQRSTUVWXYZ >>> c = bytes(4) >>> c b\x00\x00\x00\x00 >>> e = bytes("python", ascii) >>> e bpython >>> f = bytes("中文",utf-8) >>> f b\xe4\xb8\xad\xe6\x96\x87

7 字節串的運算

+ += * *=

比較運算: < <= > >= == !=

in /not in 運算符

索引 index

切片 slice

8 二進制文件的寫操作示例

Python學習筆記015——文件file的常規操作之二(二進制文件)