python中常見的運(yùn)算符及用法實(shí)例
前言??
??python中的運(yùn)算符主要包括算術(shù)運(yùn)算符,關(guān)系(比較)運(yùn)算符,賦值運(yùn)算符,邏輯運(yùn)算符,成員運(yùn)算符,身份運(yùn)算符,三目運(yùn)算符。使用運(yùn)算符將不同類型的數(shù)據(jù)按照一定的規(guī)則連接起來的式子,稱為表達(dá)式。下面將介紹一些常用的運(yùn)算符??
算術(shù)運(yùn)算符
運(yùn)算符 | 描述 |
---|---|
+ | 兩個(gè)數(shù)相加兩個(gè)數(shù)相加,或是字符串連接 |
- | 兩個(gè)數(shù)相減 |
* | 兩個(gè)數(shù)相乘,或是返回一個(gè)重復(fù)若干次的字符串 |
/ | 兩個(gè)數(shù)相除,結(jié)果為浮點(diǎn)數(shù) |
% | 取模,返回兩個(gè)數(shù)相除的余數(shù) |
// | 兩個(gè)數(shù)相除,返回商的整數(shù)部分 |
** | 冪運(yùn)算,返回乘方結(jié)果 |
print(1 + 2) # 3 print(2 - 1) # 1 print(2 * 3) # 6 print(3 / 2) # 1.5 print(6 % 5) # 1 print(8 // 2) # 4 print(3 ** 2) # 9
如果想同時(shí)得到商和余數(shù),可以用divmod這個(gè)方法
該方法的返回值是tuple (x//y, x%y).
print(divmod(10,3)) # (3,1)
因?yàn)楦↑c(diǎn)數(shù)精度的問題,Python還存在一些計(jì)算方面的小問題
print(0.1+0.1+0.1-0.3) # 5.551115123125783e-17
要解決這個(gè)問題,可以導(dǎo)入decimal模塊
from decimal import Decimal # 計(jì)算結(jié)果:0.0 print(Decimal('0.1')+Decimal('0.1')+Decimal('0.1')-Decimal('0.3'))
關(guān)系運(yùn)算符
運(yùn)算符 | 描述 |
---|---|
== | 比較對(duì)象是否相等 |
!= | 比較對(duì)象是否不相等 |
> | 大于,例如a>b,將比較a與b的大小,a>b返回True,否則返回False |
< | 小于,例如a<b,將比較a與b的大小,a<b返回True,否則返回False |
>= | 大于等于,例如a>=b,將比較a與b的大小,a>=b返回True,否則返回False |
<= | 小于等于,例如a<=b,將比較a與b的大小,a<=b返回True,否則返回False |
a = 10 b = 20 print(a == b) # False print(a != b) # True print(a > b) # False print(a < b) # True print(a >= b) # False print(a <= b) # True
1.返回值為bool值
print(True == 1) # True print(False == 0) # True
==比較數(shù)值(int與str不能直接比較)
print(2.0 == 2) # True print('2' == 2) # False
字符串與字符串之間是比較ASCII值
# True print('abc' < 'xyz') # 97 98 99 < 120 121 122
連續(xù)比較,python的解釋機(jī)制
print(3 > 2 > 1) # True print(3 > 2 > 2) # False print((3 > 2) > 1) # False
運(yùn)算符 | 描述 |
---|---|
= | 常規(guī)賦值運(yùn)算符,將運(yùn)算結(jié)果賦值給變量 |
+= | 加法賦值運(yùn)算符,例如 a+=b 等效于 a=a+b |
-= | 減法賦值運(yùn)算符,例如 a-=b 等效于 a=a-b |
*= | 乘法法賦值運(yùn)算符,例如 a*=b 等效于 a=a*b |
/= | 除法賦值運(yùn)算符,例如 a/=b 等效于 a=a/b |
//= | 取整除賦值運(yùn)算符,例如 a//=b 等效于 a=a//b |
%= | 取模賦值運(yùn)算符,例如 a%=b 等效于 a=a%b |
**= | 冪運(yùn)算賦值運(yùn)算符,例如 a**=b 等效于 a=a*b |
a = 1 # 將等號(hào)右邊 賦值 等號(hào)左邊 a = a + 1 # 先等號(hào)右邊計(jì)算 再賦值給 等號(hào)左邊 a += 1 # a = a + 1
邏輯運(yùn)算符
運(yùn)算符 | 描述 |
---|---|
and | 與運(yùn)算,如果a 為False,a and b返回False 否則返回y的計(jì)算值 |
or | 或運(yùn)算,如果a非0,返回a的值,否則返回b的值 |
not | 非運(yùn)算,如果a為True,返回False,如果a為False,返回True |
a = 10 b = 20 print(a and b) # 20 print(a or b) # 10 print(not a) # False
a and b 兩者都為True時(shí)結(jié)果才為True
a or b 兩者有一個(gè)為True則結(jié)果就為True
短路(懶惰)原則
False and True 當(dāng)and運(yùn)算符時(shí),遇到第一個(gè)為False則不會(huì)往后了
True or False 當(dāng)or運(yùn)算符時(shí),遇到第一個(gè)為True則不會(huì)往后了
成員運(yùn)算符
運(yùn)算符 | 描述 |
---|---|
in | 如果在指定的序列中找到值返回True,否則返回False |
not in | 如果在指定的序列中找到值返回True,否則返回False |
list1 = [1, 2, 3, 4, 5] a = 1 if a in list1: print("a是list1的元素之一") else: print("a不是list1的元素")
身份運(yùn)算符
運(yùn)算符 | 描述 |
---|---|
is | 判斷兩個(gè)標(biāo)識(shí)符是不是引用自一個(gè)對(duì)象 |
is not判斷兩個(gè)標(biāo)識(shí)符是不是引用自不同對(duì)象 |
is 和比較運(yùn)算符 == 的區(qū)別
is 用于判斷兩個(gè)變量是否引自同一個(gè)對(duì)象(可使用id()查看),而 ==用于判斷變量的值是否相等!
a = [1, 2, 3] b = [1, 2, 3] # 可通過id()查看內(nèi)存地址 print(id(a)) # 2042443551304 print(id(b)) # 2042443551816 print(a is b) # False print(a == b) # True
a = 2 b = 2.0 # 可通過id()查看內(nèi)存地址 print(id(a)) # 140722443350320 print(id(b)) # 2336678499216 print(a is b) # False print(a == b) # True
三目運(yùn)算符
三目運(yùn)算符的表示方法:True_statements if expression else False_statements
a = 1 b = 2 # a+b不大于3執(zhí)行后面的else語句 b-a = 1 print(a+b if a+b>3 else b-a)
運(yùn)算符優(yōu)先級(jí)
運(yùn)算符 | 描述 |
---|---|
** | 指數(shù)(最高優(yōu)先級(jí)) |
*/%// | 乘,除,取模和取整除 |
± | 加法減法 |
<= >= | 比較運(yùn)算符 |
== != | 等于運(yùn)算符 |
= %= 、= 、、=-= += *= **= | 賦值運(yùn)算符 |
is is not | 身份運(yùn)算符 |
in not in | 成員運(yùn)算符 |
not or and | 邏輯運(yùn)算符 |
總結(jié)
到此這篇關(guān)于python中常見的運(yùn)算符及用法的文章就介紹到這了,更多相關(guān)python運(yùn)算符及用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python 微信好友特征數(shù)據(jù)分析及可視化
這篇文章主要介紹了python 微信好友特征數(shù)據(jù)分析及可視化,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01Pytorch數(shù)據(jù)類型Tensor張量操作的實(shí)現(xiàn)
本文主要介紹了Pytorch數(shù)據(jù)類型Tensor張量操作的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07Python3.4實(shí)現(xiàn)從HTTP代理網(wǎng)站批量獲取代理并篩選的方法示例
這篇文章主要介紹了Python3.4實(shí)現(xiàn)從HTTP代理網(wǎng)站批量獲取代理并篩選的方法,涉及Python網(wǎng)絡(luò)連接、讀取、判斷等相關(guān)操作技巧,需要的朋友可以參考下2017-09-09對(duì)python中基于tcp協(xié)議的通信(數(shù)據(jù)傳輸)實(shí)例講解
今天小編就為大家分享一篇對(duì)python中基于tcp協(xié)議的通信(數(shù)據(jù)傳輸)實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-07-07Python列表list操作符實(shí)例分析【標(biāo)準(zhǔn)類型操作符、切片、連接字符、列表解析、重復(fù)操作等】
這篇文章主要介紹了Python列表list操作符,結(jié)合實(shí)例形式分析了標(biāo)準(zhǔn)類型操作符、切片、連接字符、列表解析、重復(fù)操作等使用技巧,需要的朋友可以參考下2017-07-07python3.6連接mysql數(shù)據(jù)庫及增刪改查操作詳解
這篇文章主要介紹了python3.6 連接mysql數(shù)據(jù)庫及增刪改查操作詳解,需要的朋友可以參考下2020-02-02python如何獲取apk的packagename和activity
這篇文章主要介紹了python如何獲取apk的packagename和activity,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-01-01