1. 程式人生 > >程式碼塊資料池(密碼本)

程式碼塊資料池(密碼本)

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')