網站首頁 編程語言 正文
算術運算符
運算符 | 描述 |
---|---|
+ | 兩個數相加兩個數相加,或是字符串連接 |
- | 兩個數相減 |
* | 兩個數相乘,或是返回一個重復若干次的字符串 |
/ | 兩個數相除,結果為浮點數 |
% | 取模,返回兩個數相除的余數 |
// | 兩個數相除,返回商的整數部分 |
** | 冪運算,返回乘方結果 |
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,否則返回False |
not 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 | 邏輯運算符 |
原文鏈接:https://blog.csdn.net/xqe777/article/details/126054765
相關推薦
- 2022-03-17 docker-compose安裝yml文件配置方式_docker
- 2023-06-18 C#使用udp如何實現消息的接收和發送_C#教程
- 2022-08-02 淺談Redis常見延遲問題定位與分析_Redis
- 2022-10-10 Python3?re.search()方法的具體使用_python
- 2022-05-26 解決redis批量刪除key值的問題_Redis
- 2023-04-02 深入分析Golang?Server源碼實現過程_Golang
- 2022-11-18 詳解C語言內核字符串轉換方法_C 語言
- 2023-07-24 解碼方法decodedURIComponent
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支