程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

python常見的運算符及用法

編輯:Python

前言
python中的運算符主要包括算術運算符,關系(比較)運算符,賦值運算符,邏輯運算符,成員運算符,身份運算符,三目運算符。使用運算符將不同類型的數據按照一定的規則連接起來的式子,稱為表達式。下面將介紹一些常用的運算符

python運算符

  • 算術運算符
  • 關系運算符
  • 賦值運算符
  • 邏輯運算符
  • 成員運算符
  • 身份運算符
  • 三目運算符
  • 運算符優先級

算術運算符

運算符描述+兩個數相加兩個數相加,或是字符串連接-兩個數相減*兩個數相乘,或是返回一個重復若干次的字符串/兩個數相除,結果為浮點數%取模,返回兩個數相除的余數//兩個數相除,返回商的整數部分**冪運算,返回乘方結果
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

如果想同時得到商和余數,可以用divmod這個方法
該方法的返回值是tuple (x//y, x%y).

print(divmod(10,3)) # (3,1)

因為浮點數精度的問題,Python還存在一些計算方面的小問題

print(0.1+0.1+0.1-0.3) # 5.551115123125783e-17

要解決這個問題,可以導入decimal模塊

from decimal import Decimal
# 計算結果:0.0
print(Decimal('0.1')+Decimal('0.1')+Decimal('0.1')-Decimal('0.3'))

關系運算符

運算符描述==比較對象是否相等!=比較對象是否不相等>大於,例如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

==比較數值(int與str不能直接比較)

print(2.0 == 2) # True
print('2' == 2) # False

字符串與字符串之間是比較ASCII

# True
print('abc' < 'xyz') # 97 98 99 < 120 121 122

連續比較,python的解釋機制

print(3 > 2 > 1) # True
print(3 > 2 > 2) # False
print((3 > 2) > 1) # False

賦值運算符

運算符描述=常規賦值運算符,將運算結果賦值給變量+=加法賦值運算符,例如 a+=b 等效於 a=a+b-=減法賦值運算符,例如 a-=b 等效於 a=a-b*=乘法法賦值運算符,例如 a*=b 等效於 a=a*b/=除法賦值運算符,例如 a/=b 等效於 a=a/b//=取整除賦值運算符,例如 a//=b 等效於 a=a//b%=取模賦值運算符,例如 a%=b 等效於 a=a%b**=冪運算賦值運算符,例如 a**=b 等效於 a=a*b
a = 1 # 將等號右邊 賦值 等號左邊
a = a + 1 # 先等號右邊計算 再賦值給 等號左邊
a += 1 # a = a + 1

邏輯運算符

運算符描述and與運算,如果a 為False,a and b返回False 否則返回y的計算值or或運算,如果a非0,返回a的值,否則返回b的值not非運算,如果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時結果才為True
a or b 兩者有一個為True則結果就為True

短路(懶惰)原則
False and True 當and運算符時,遇到第一個為False則不會往後了
True or False 當or運算符時,遇到第一個為True則不會往後了

成員運算符

運算符描述in如果在指定的序列中找到值返回True,否則返回Falsenot in如果在指定的序列中找到值返回True,否則返回False
list1 = [1, 2, 3, 4, 5]
a = 1
if a in list1:
print("a是list1的元素之一")
else:
print("a不是list1的元素")

身份運算符

運算符描述is判斷兩個標識符是不是引用自一個對象is not判斷兩個標識符是不是引用自不同對象is 和比較運算符 == 的區別is 用於判斷兩個變量是否引自同一個對象(可使用id()查看),而 ==用於判斷變量的值是否相等!
a = [1, 2, 3]
b = [1, 2, 3]
# 可通過id()查看內存地址
print(id(a)) # 2042443551304
print(id(b)) # 2042443551816
print(a is b) # False
print(a == b) # True
a = 2
b = 2.0
# 可通過id()查看內存地址
print(id(a)) # 140722443350320
print(id(b)) # 2336678499216
print(a is b) # False
print(a == b) # True

三目運算符

三目運算符的表示方法:True_statements if expression else False_statements

a = 1
b = 2
# a+b不大於3執行後面的else語句 b-a = 1
print(a+b if a+b>3 else b-a)

運算符優先級

運算符描述**指數(最高優先級)*/%//乘,除,取模和取整除±加法減法<= >=比較運算符== !=等於運算符= %= 、= 、、=-= += *= **=賦值運算符is is not身份運算符in not in成員運算符not or and邏輯運算符以上就是博主整理的python常用的運算符,如果有改進的建議,歡迎在評論區留言奧~


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved