一、Python 數(shù)據(jù)類(lèi)型
Python 中一共有 6 種基本數(shù)據(jù)類(lèi)型,他們是:
- Number(數(shù)字)
- String(字符串)
- List(列表)
- Tuple(元組)
- Set(集合)
- Dictionary(字典)
在這6個(gè)基本數(shù)據(jù)類(lèi)型中,不可變數(shù)據(jù) 有3個(gè):
- Number(數(shù)字)
- String(字符串)
- Tuple(元組)
可變數(shù)據(jù) 有3個(gè):
- List(列表)
- Set(集合)
- Dictionary(字典)
各個(gè)數(shù)據(jù)可以使用特定的語(yǔ)句來(lái)進(jìn)行轉(zhuǎn)換,如int()
、str()
、float()
、set()
等。
以下幾個(gè)內(nèi)置的函數(shù)可以執(zhí)行數(shù)據(jù)類(lèi)型之間的轉(zhuǎn)換。
這些函數(shù)返回一個(gè)新的對(duì)象,表示轉(zhuǎn)換的值。
函數(shù) | 描述 |
---|---|
int(x) | 將 x 轉(zhuǎn)換為一個(gè)整數(shù) |
float(x) | 將 x 轉(zhuǎn)換到一個(gè)浮點(diǎn)數(shù) |
complex(real) | 創(chuàng)建一個(gè)復(fù)數(shù) |
str(x) | 將對(duì)象 x 轉(zhuǎn)換為字符串 |
repr(x) | 將對(duì)象 x 轉(zhuǎn)換為表達(dá)式字符串 |
eval(str) | 用來(lái)計(jì)算在字符串中的有效 Python 表達(dá)式,并返回一個(gè)對(duì)象 |
tuple(s) | 將序列 s 轉(zhuǎn)換為一個(gè)元組 |
list(s) | 將序列 s 轉(zhuǎn)換為一個(gè)列表 |
set(s) | 將序列 s 轉(zhuǎn)換為可變集合 |
dict(d) | 創(chuàng)建一個(gè)字典。d 必須是一個(gè) (key, value) 元組序列。 |
frozenset(s) | 將序列 s 轉(zhuǎn)換為不可變集合 |
chr(x) | 將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)字符 |
ord(x) | 將一個(gè)字符轉(zhuǎn)換為它的整數(shù)值 |
hex(x) | 將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)十六進(jìn)制字符串 |
oct(x) | 將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)八進(jìn)制字符串 |
二、 運(yùn)算符
Python 語(yǔ)言支持以下類(lèi)型的運(yùn)算符:
- 算術(shù)運(yùn)算符
- 比較(關(guān)系)運(yùn)算符
- 賦值運(yùn)算符
- 邏輯運(yùn)算符
- 位運(yùn)算符
- 成員運(yùn)算符
- 身份運(yùn)算符
- 運(yùn)算符優(yōu)先級(jí)
(1)算術(shù)運(yùn)算符
以下假設(shè)變量 a=10,變量 b=21:
運(yùn)算符 | 名稱(chēng) | 描述 | 輸出 |
---|---|---|---|
+ |
加 | 兩個(gè)對(duì)象相加 | a + b 輸出結(jié)果 31 |
- |
減 | 得到負(fù)數(shù)或是一個(gè)數(shù)減去另一個(gè)數(shù) | a - b 輸出結(jié)果 -11 |
* |
乘 | 兩個(gè)數(shù)相乘或是返回一個(gè)被重復(fù)若干次的字符串 | a * b 輸出結(jié)果 210 |
/ |
除 | x 除以 y | b / a 輸出結(jié)果 2.1 |
% |
取模 | 返回除法的余數(shù) | b % a 輸出結(jié)果 1 |
** |
冪 | 返回x的y次冪 | a**b 為 10 的 21 次方 |
// |
整除 | 整除,往小的方向取整數(shù) | a//b 輸出結(jié)果 0 |
(2)比較運(yùn)算符
以下假設(shè)變量a為10,變量b為20:
運(yùn)算符 | 名稱(chēng) | 描述 | 實(shí)例 |
---|---|---|---|
== | 等于 | 比較對(duì)象是否相等 | (a == b) 返回 False。 |
!= | 不等于 | 比較兩個(gè)對(duì)象是否不相等 | (a != b) 返回 True。 |
> | 大于 | 返回 x 是否大于 y | (a > b) 返回 False。 |
< | 小于 | 返回 x 是否小于 y。所有比較運(yùn)算符返回1表示真,返回0表示假。這分別與特殊的變量True和False等價(jià)。注意,這些變量名的大寫(xiě)。 | (a < b) 返回 True。 |
>= | 大于等于 | 返回 x 是否大于等于 y。 | (a >= b) 返回 False。 |
<= | 小于等于 | 返回 x 是否小于等于 y。 | (a <= b) 返回 True。 |
(3)賦值運(yùn)算符
以下假設(shè)變量a為10,變量b為20:
運(yùn)算符 | 描述 | 實(shí)例 |
---|---|---|
= | 簡(jiǎn)單的賦值運(yùn)算符 | c = a + b 將 a + b 的運(yùn)算結(jié)果賦值為 c |
+= | 加法賦值運(yùn)算符 | c += a 等效于 c = c + a |
-= | 減法賦值運(yùn)算符 | c -= a 等效于 c = c - a |
*= | 乘法賦值運(yùn)算符 | c *= a 等效于 c = c * a |
/= | 除法賦值運(yùn)算符 | c /= a 等效于 c = c / a |
%= | 取模賦值運(yùn)算符 | c %= a 等效于 c = c % a |
**= | 冪賦值運(yùn)算符 | c **= a 等效于 c = c ** a |
//= | 取整除賦值運(yùn)算符 | c //= a 等效于 c = c // a、 |
(4)按位運(yùn)算符
按位運(yùn)算符是把數(shù)字看作二進(jìn)制來(lái)進(jìn)行計(jì)算的。Python中的按位運(yùn)算法則如下:
下表中變量 a 為 60,b 為 13二進(jìn)制格式如下:
a = 0011 1100
b = 0000 1101
a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a = 1100 0011
-
&(按位與運(yùn)算符):參與運(yùn)算的兩個(gè)值,如果兩個(gè)相應(yīng)位都為 1,則該位的結(jié)果為 1,否則為 0
- (a & b) 輸出結(jié)果 12 ,二進(jìn)制解釋?zhuān)?0000 1100
-
|(按位或運(yùn)算符):只要對(duì)應(yīng)的二個(gè)二進(jìn)位有一個(gè)為 1 時(shí),結(jié)果位就為 1。
- (a | b) 輸出結(jié)果 61 ,二進(jìn)制解釋?zhuān)?0011 1101
-
^(按位異或運(yùn)算符):當(dāng)兩對(duì)應(yīng)的二進(jìn)位相異時(shí),結(jié)果為 1。
- (a ^ b) 輸出結(jié)果 49 ,二進(jìn)制解釋?zhuān)?0011 0001
-
~(按位取反運(yùn)算符):對(duì)數(shù)據(jù)的每個(gè)二進(jìn)制位取反,即把 1 變?yōu)?0,把 0 變?yōu)?1。
- (~a) 輸出結(jié)果 -61 ,二進(jìn)制解釋?zhuān)?1100 0011
-
<<(左移動(dòng)運(yùn)算符):運(yùn)算數(shù)的各二進(jìn)位全部左移若干位,由"<<"右邊的數(shù)指定移動(dòng)的位數(shù),高位丟棄,低位補(bǔ)0。
- (a << 2) 輸出結(jié)果 240 ,二進(jìn)制解釋?zhuān)?111 0000
-
>>(右移動(dòng)運(yùn)算符):把">>“左邊的運(yùn)算數(shù)的各二進(jìn)位全部右移若干位,”>>"右邊的數(shù)指定移動(dòng)的位數(shù)
- a >> 2 輸出結(jié)果 15 ,二進(jìn)制解釋?zhuān)?0000 1111
(5)邏輯運(yùn)算符
Python語(yǔ)言支持邏輯運(yùn)算符,以下假設(shè)變量 a 為 10, b為 20:
運(yùn)算符 | 邏輯表達(dá)式 | 名稱(chēng) | 描述 | 實(shí)例 |
---|---|---|---|---|
and | x and y | 布爾"與" | 如果 x 為 False,x and y 返回 x 的值,否則返回 y 的計(jì)算值。 | (a and b) 返回 20。 |
or | x or y | 布爾"或" | 如果 x 是 True,它返回 x 的值,否則它返回 y 的計(jì)算值。 | (a or b) 返回 10。 |
not | not x | 布爾"非" | 如果 x 為 True,返回 False 。如果 x 為 False,它返回 True。 | not(a and b) 返回 False |
(6)成員運(yùn)算符
除了以上的一些運(yùn)算符之外,Python還支持成員運(yùn)算符,成員包括字符串,列表或元組等。
運(yùn)算符 | 描述 | 實(shí)例 |
---|---|---|
in | 如果在指定的序列中找到值返回 True,否則返回 False。 | x 在 y 序列中 , 如果 x 在 y 序列中返回 True。 |
not in | 如果在指定的序列中沒(méi)有找到值返回 True,否則返回 False。 | x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。 |
(7)身份運(yùn)算符
身份運(yùn)算符用于比較兩個(gè)對(duì)象的存儲(chǔ)單元文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-432731.html
運(yùn)算符 | 描述 | 實(shí)例 |
---|---|---|
is | is 是判斷兩個(gè)標(biāo)識(shí)符是不是引用自一個(gè)對(duì)象 | x is y, 類(lèi)似 id(x) == id(y) , 如果引用的是同一個(gè)對(duì)象則返回 True,否則返回 False |
is not | is not 是判斷兩個(gè)標(biāo)識(shí)符是不是引用自不同對(duì)象 | x is not y , 類(lèi)似 id(x) != id(y)。如果引用的不是同一個(gè)對(duì)象則返回結(jié)果 True,否則返回 False。 |
(8)運(yùn)算符優(yōu)先級(jí)
以下表格列出了從最高到最低優(yōu)先級(jí)的所有運(yùn)算符, 相同單元格內(nèi)的運(yùn)算符具有相同優(yōu)先級(jí)。 運(yùn)算符均指二元運(yùn)算,除非特別指出。 相同單元格內(nèi)的運(yùn)算符從左至右分組(除了冪運(yùn)算是從右至左分組):文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-432731.html
運(yùn)算符 | 描述 |
---|---|
(expressions…), [expressions…], {key: value…}, {expressions…} | 圓括號(hào)的表達(dá)式 |
x[index], x[index:index], x(arguments…), x.attribute | 讀取,切片,調(diào)用,屬性引用 |
await x | await 表達(dá)式 |
** | 乘方(指數(shù)) |
+x, -x, ~x | 正,負(fù),按位非 NOT |
*, @, /, //, % | 乘,矩陣乘,除,整除,取余 |
+, - | 加和減 |
<<, >> | 移位 |
& | 按位與 AND |
^ | 按位異或 XOR |
絕對(duì)值符號(hào)(打出來(lái)會(huì)格式混亂,所以以此代替) | 按位或 OR |
in,not in, is,is not, <, <=, >, >=, !=, == | 比較運(yùn)算,包括成員檢測(cè)和標(biāo)識(shí)號(hào)檢測(cè) |
not x | 邏輯非 NOT |
and | 邏輯與 AND |
or | 邏輯或 OR |
if – else | 條件表達(dá)式 |
lambda | lambda 表達(dá)式 |
:= | 賦值表達(dá)式 |
到了這里,關(guān)于【 Python 全棧開(kāi)發(fā) ⑤ 】Python 數(shù)據(jù)類(lèi)型與運(yùn)算符的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!