程式碼塊資料池(密碼本)
list:在迴圈一個列表時,最好不要改變列表的大小,會影響結果。
倒敘迴圈:
for i in range(len(l1)-1,-1,-1):
pass
dict:在迴圈一個字典時,不能改變字典的大小,會報錯。
is id ==
== 比較的是兩邊的數值是否相同
id() 物件的記憶體地址
記憶體地址相同:變數的在記憶體中的指向是同一個記憶體地址
is 比較的是記憶體地址相同,是否是同一個人。
程式碼塊:
一個檔案。 命令列的一行就是一個程式碼塊。
同一程式碼塊中的快取機制:
適應的資料型別:str int bool
意義:
1,節省記憶體
2,提高效能。
小資料池:
適應的資料型別:str(一定範圍) int(-5~256) bool
意義:
1,節省記憶體
2,提高效能。
編碼進階:
ascii unicode utf-8 gbk
1,不同編碼之間不能相互識別。(亂碼或者出錯)
2,網路傳輸和資料儲存不能是通過unicode的編碼方式的01010101.
python3x:
str:內部編碼方式:unicode
不能直接將字串用於網路傳輸和資料儲存。
bytes:內部編碼方式:非unicode
英文:
str:'alex'
記憶體編碼:unicode
bytes:b'alex'
記憶體編碼:非unicode
中文:
str:'太白'
記憶體編碼:unicode
bytes:b'\ex3\ex3\ex3\ex3\ex3\ex3\'
記憶體編碼:非unicode
unicode ----> b1 = s1.encode('gbk')
gbk --------> b1.decode('gbk')
unicode ----> s1.encode('utf-8')
utf-8 --------> b1.decode('utf-8')
b1 gbk的bytes型別
gbk -----> utf-8
b1.decode('gbk').encode('utf-8')