Python學習筆記015——文件file的常規操作之二(二進制文件)
阿新 • • 發佈:2018-02-06
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 b‘ABCD‘ >>> b b‘ABCD‘ >>> c b‘ABCD‘ >>> d b‘AB‘
6 字節串的構造(創建)函數 bytes
bytes() :創建一個空字節串, 等同於b‘‘
bytes(整型可叠代對象) : 用可叠代對象初始化一個字節串(數值必須是0~255的整數)
bytes(整數n) : 生成n個值為0的字節串
bytes(字符串, encoding=‘utf-8‘) :用字符串轉換編碼生成一個字節串
示例
>>> b = bytes(range(0x41,0x41+26))>>> b b‘ABCDEFGHIJKLMNOPQRSTUVWXYZ‘ >>> c = bytes(4) >>> c b‘\x00\x00\x00\x00‘ >>> e = bytes("python", ‘ascii‘) >>> e b‘python‘ >>> f = bytes("中文",‘utf-8‘) >>> f b‘\xe4\xb8\xad\xe6\x96\x87‘
7 字節串的運算
+ += * *=
比較運算: < <= > >= == !=
in /not in 運算符
索引 index
切片 slice
8 二進制文件的寫操作示例
Python學習筆記015——文件file的常規操作之二(二進制文件)