小資料池
數字小資料池的範圍是 -5~256
字串中如果有特殊字元,他們的記憶體位址就不一樣
字串中的單個字元*20以內他們的記憶體位址一樣,單個*21以上記憶體位址就不一致
黑框框 == 終端
a = 'alex@'
a1 ='alex@'
print(a is a1) false
n= n //2
n1= 2
print(n is n1) true
a = 'a'*21
b ='a'*21
print(a is b) false
a = 'aaaaaaaaaaaaaaaaaaaaaaaa'
b = 'aaaaaaaaaaaaaaaaaaaaaaaa'
print(a is b) true
n = -6
n1 = -6
print(n is n1) false
n = -5
n1 = -5
print(n is n1) true
n = 257
n1 = 257
print(n is n1) true (在pycharm中判斷是對的)
總結== 比較 比較的是兩邊的值
is 比較 比較的是記憶體位址 id()
編碼和解碼
ascii 碼:
不支援 中文
支援 英文 數字 符號
8位 乙個位元組
gbk碼 國標:
支援 中文,英文,數字,符號
英文 16位 二個位元組
中文 16位 二個位元組
unicode 萬國碼
支援 中文,英文,數字,符號
英文 32 位 四個位元組
中文 32位 四個位元組
utf-8 長度可變的萬國碼 最少用8位
英文 8位 乙個位元組
中文 24位 三個位元組
python3中 程式執行階段 使用的是unicode 顯示所有的內容
bytes型別
傳輸和儲存都是使用bytes
pycharm 儲存的時候預設是使用utf-8
總結is 和 == 區別
is 比較記憶體位址
id() ---- 獲取記憶體位址
小資料池:
數字的小資料池範圍是 -5 ~ 256
字串:
字串中不能包含特殊符號 + - * / @ 等等
字串單個字元*20以內記憶體位址都是一樣的,單個字元*21以上記憶體位址不一致
注意: pycharm是個坑, 乙個py檔案中所有相同的字串 一般都是使用一樣的記憶體位址
== 比較倆邊的值
編碼和解碼
encode(編碼方式) ---- 拿到明文編碼後對應的位元組
decode(編碼方式) -----將編碼後的位元組解碼成對應的明文
注意: 用什麼進行編碼就要什麼進行解碼 不然後會懵逼!
mysql的 和 的區別 和 的區別
他們之間的區別用最直接的話來說就是 相當於對資料 加上 雙引號,相當於直接顯示資料。1 對傳入的引數視為字串,也就是它會預編譯select from user where name 比如我傳乙個csdn,那麼傳過來就是select from user where name csdn 2 將不會將傳入...
a和 a的區別
這道題目是我在面試的時候碰到的。當時面試官問我的時候,由於我什麼基礎都比較差,我聽到這個問題的時候整個人都傻了。我心想當時學c語言的時候,我只記得老師說這個都代表a陣列的首位址啊,這有什麼區別呢?這道題目,我最終沒有答出來,都怪我太菜了。今天這篇文章就當做是乙個記錄吧,也希望能給還不q清楚的同學一點...
and和or的區別
題目 求結果 a.1 or 2 b.1 and 2 c.1 2 2 d.1 2 2 結果 a 1 b 2 c 0 d 1 總結and和or的用法 and 從左到右,返回第乙個為假的表示式值,無假值則返回最後乙個表示式值。or 從左到右,返回第乙個為真的表示式值,無真值則返回最後乙個表示式值。備註 感...