python字符串,賦值和is的區別
阿新 • • 發佈:2019-01-23
如何 不同 span 中文 gbk 不能 print python code
1. == 與 is 的區別
賦值 == 比較值是否相等,is 比較,比較的是內存地址。
小數據池的作用是節省內存空間
數字的範圍:-5 到 256 共用一個數據池
字符串範圍:1.不能有特殊字符。2. s*20還是同一個地址,超過以後就是不用地址 3.不同字符超過20仍然is
剩下的 列表,元祖等沒有小地址池
2. python3中的編碼
ascii 一個字符1個字節,占8位 A:00000010 unicode 一個字符4個字節,占32位 A:00000000 00000001 00000010 00000010 中: utf-8 一個英文字符,8位 一個中文字符,占24位 gbk A:一個字符,8位 中:一個中文字符,16位1.各個編碼2 進制不能識別,會產生亂碼 2.文件的存儲和傳輸不能是unicode
3.python中的bytes類型
‘‘‘ 對於英文: str: 表現形式: s = ‘alex‘ 編碼方式: 01010101 unicode bytes: 表現形式: s = b‘alex‘ 編碼方式: 01010101 utf-8 gbk 對於中文: str: 表現形式: s = ‘中國‘ 編碼方式: 01010101 unicode bytes: 表現形式: s = b‘x\e91\e91\e01\e21\e31\e32‘ 3字節表示一個中文,utf-8;若2個字節1個漢字,gbk 編碼方式: 01010101 utf-8 gbk‘‘‘ s1 = ‘alex‘ # 將 unicode 轉換成utf-8 或gdk,表現形式是將str 轉換成bytes, # encode 編碼,如何將str --> bytes, s11 = s1.encode(‘utf-8‘) print(s11)
python字符串,賦值和is的區別