日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

多段实例代码详解7大类Python运算符,建议收藏!

發(fā)布時間:2025/3/15 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 多段实例代码详解7大类Python运算符,建议收藏! 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

導讀:本文主要介紹Python運算符。舉個簡單的例子:4+5=9,其中,4和5被稱為操作數(shù),+稱為運算符。Python語言支持以下類型的運算符:算術(shù)運算符、比較(關(guān)系)運算符、賦值運算符、邏輯運算符、位運算符、成員運算符、身份運算符、運算符優(yōu)先級。下面分別介紹這些運算符的相關(guān)內(nèi)容。

作者:劉鵬 高中強 王一凡?等

來源:大數(shù)據(jù)DT(ID:hzdashuju)

01 算術(shù)運算符

假設(shè)變量a=10,b=20,Python中算術(shù)運算符及其實例如下所示。

+

  • 加:兩個對象相加

  • a+b:30

-

  • 減:得到負數(shù)或是一個數(shù)減去另一個數(shù)

  • a–b:-10

*

  • 乘:兩個數(shù)相乘或是返回一個被重復若干次的字符串

  • a*b:200

/

  • 除:x除以y

  • b/a:2

%

  • 取模:返回除法的余數(shù)

  • b%a:0

**

  • 冪:返回x的y次冪

  • a**b:100000000000000000000

//

  • 取整除:返回商的整數(shù)部分(向下取整)

  • 9//2:4

  • -9//2:-5

以下實例演示了Python所有算術(shù)運算符的操作:

a?=?21 b?=?10? c?=?0? c?=?a?+?b? print?("1 - c 的值為:",?c) c?=?a?-?b? print?("2 - c 的值為:",?c) c?=?a?*?b? print?("3 - c 的值為:",?c)? c?=?a?/?b? print?("4 - c 的值為:",?c)? c?=?a?%?b? print?("5 - c 的值為:",?c)? #?修改變量?a?、b?、c a?=?2? b?=?3? c?=?a**b? print?("6 - c 的值為:",?c)? a?=?10? b?=?5? c?=?a//b? print?("7 - c 的值為:",?c)

輸出結(jié)果為:

1?- c 的值為:31 2?- c 的值為:11 3?- c 的值為:210 4?- c 的值為:2.1 5?- c 的值為:1 6?- c 的值為:8 7?- c 的值為:2

有一點要注意,在Python 2.x中,整數(shù)除整數(shù),只能得出整數(shù)。如果要得到小數(shù)部分,則需要其中一個數(shù)改成浮點數(shù)。例如:

1/2? 01.0/2 0.51/float(2) 0.5

02 比較運算符

假設(shè)變量a=10,b=20,Python中比較運算符及其實例如表下所示。

==

  • 等于:比較對象是否相等

  • (a==b):返回false

!=

  • 不等于:比較兩個對象是否不相等

  • (a != b):返回true

< >

  • 不等于:比較兩個對象是否不相等(Python 3已廢棄)

  • (a <> b):返回true

  • 這個運算符與!=類似

>

  • 大于:返回x是否大于y

  • (a>b):返回false

<

  • 小于:返回x是否小于y。所有比較運算符返回1表示真,返回0表示假。這分別與特殊變量true和false等價

  • (a<b):返回true

>=

  • 大于等于:返回x是否大于等于y

  • (a>=b):返回false

<=

  • 小于等于:返回x是否小于等于y

  • (a<=b):返回true

以下實例演示了Python所有比較運算符的操作:

a?=?21 b?=?10 c?=?0 if?a?==?b?:print?("1?-?a?等于?b") else:print?("1?-?a?不等于?b") if?a?!=?b?:print?("2?-?a?不等于?b") else:print?("2?-?a?等于?b") if?a?<?b?:print?("3?-?a?小于?b") else:print?("3?-?a?大于等于?b") if?a?>?b?:print?("4?-?a?大于?b") else:print?("4?-?a?小于等于?b") #?修改變量?a?和?b?的值 a?=?5 b?=?20 if?a?<=?b?:print?("5?-?a?小于等于?b") else:print?("5?-?a?大于?b") if?b?>=?a?:print?("6?-?b?大于等于?a") else:print?("6?-?b?小于?a")

輸出結(jié)果為:

1?-?a?不等于?b 2?-?a?不等于?b 3?-?a?大于等于?b 4?-?a?大于?b 5?-?a?小于等于?b 6?-?b?大于等于?a

03 賦值運算符

假設(shè)變量a=10,b=20,Python中賦值運算符及其實例如下所示。

=

  • 簡單的賦值運算符

  • c=a+b:將a+b的運算結(jié)果賦值為c

+=

  • 加法賦值運算符

  • c+=a:等效于c=c+a

-=

  • 減法賦值運算符

  • c-=a:等效于c=c-a

*=

  • 乘法賦值運算符

  • c*=a:等效于c=c*a

/=

  • 除法賦值運算符

  • c/=a:等效于c=c/a

%=

  • 取模賦值運算符

  • c%=a:等效于c=c%a

**=

  • 冪賦值運算符

  • c**=a:等效于c=c**a

//=

  • 取整除賦值運算符

  • c//=a:等效于c=c//a

以下實例演示了Python所有賦值運算符的操作:

a?=?21? b?=?10? c?=?0? c?=?a?+?b? print?("1 - c 的值為:",?c?) c?+=?a? print?("2 - c 的值為:",?c)? c?*=?a? print?("3 - c 的值為:",?c)? c?/=?a? print?("4 - c 的值為:",?c) c?=?2? c?%=?a? print?("5 - c 的值為:",?c) c?**=?a? print?("6 - c 的值為:",?c)? c?//=?a? print?("7 - c 的值為:",?c)

輸出結(jié)果為:

1?- c 的值為:31 2?- c 的值為:52 3?- c 的值為:1092 4?- c 的值為:52 5?- c 的值為:2 6?- c 的值為:2097152 7?- c 的值為:99864

04 按位運算符

按位運算符是把數(shù)字看作二進制來進行計算。假設(shè)變量a=60,b=13,Python中按位運算符及其實例如下所示。

&

  • 按位與運算符:參與運算的兩個值,如果兩個對應(yīng)位都為1,則該位的結(jié)果為1,否則為0

  • (a&b)輸出結(jié)果:12

  • 二進制解釋:0000 1100

|

  • 按位或運算符:只要對應(yīng)的兩個二進位有一個為1時,結(jié)果位就為1

  • (a|b)輸出結(jié)果:61

  • 二進制解釋:0011 1101

^

  • 按位異或運算符:當兩個對應(yīng)的二進位相異時,結(jié)果為1

  • (a^b)輸出結(jié)果:49

  • 二進制解釋:0011 0001

~

  • 按位取反運算符:對數(shù)據(jù)的每個二進制位取反,即把1變?yōu)?,把0變?yōu)?。~x類似于-x-1

  • (~a)輸出結(jié)果:-61

  • 二進制解釋:1100 0011

  • 在一個有符號二進制數(shù)的補碼形式

<<

  • 左移動運算符:運算數(shù)的各二進位全部左移若干位,由<<右邊的數(shù)字指定移動的位數(shù),高位丟棄,低位補0

  • a<<2輸出結(jié)果:240

  • 二進制解釋:1111 0000

>>

  • 右移動運算符:把>>左邊的運算數(shù)的各二進位全部右移若干位,由>>右邊的數(shù)字指定移動的位數(shù)

  • a>>2輸出結(jié)果:15

  • 二進制解釋:0000 1111

以下實例演示了Python所有位運算符的操作:

a?=?60#?60?=?0011?1100? b?=?13#?13?=?0000?1101? c?=?0? c?=?a?&?b;#?12?=?0000?1100? print?("1 - c 的值為:",?c) c?=?a?|?b;#?61?=?0011?1101? print?("2 - c 的值為:",?c)? c?=?a?^?b;#?49?=?0011?0001? print?("3 - c 的值為:",?c)? c?=?~a;#?-61?=?1100?0011? print?("4 - c 的值為:",?c)? c?=?a?<<?2;#?240?=?1111?0000? print?("5 - c 的值為:",?c)? c?=?a?>>?2;#?15?=?0000?1111? print?("6 - c 的值為:",?c)

輸出結(jié)果為:

1?- c 的值為:12 2?- c 的值為:61 3?- c 的值為:49 4?- c 的值為:-61 5?- c 的值為:240 6?- c 的值為:15

05 邏輯運算符

假設(shè)變量a=10,b=20,Python中邏輯運算符及其實例如下所示。

and

  • x and y

  • 布爾與:如果x為false,x and y返回false,否則它返回y的計算值

  • (a and b)返回20

or

  • x or y

  • 布爾或:如果x是非0,返回x的計算值,否則返回y的計算值

  • (a or b)返回10

not

  • not x

  • 布爾非:如果x為true,返回false。如果x為false,返回true

  • not(a and b)返回False

以下實例演示了Python所有邏輯運算符的操作:

a?=?10? b?=?20? if?a?and?b?:?print?("1?-?變量?a?和?b?都為?true")? else:?print?("1?-?變量?a?和?b?有一個不為?true")? if?a?or?b?:?print?("2?-?變量?a?和?b?都為?true,或其中一個變量為?true")? else:?print?("2?-?變量?a?和?b?都不為?true")?#?修改變量?a?的值? a?=?0? if?a?and?b?:?print?("3?-?變量?a?和?b?都為?true")? else:?print?("3?-?變量?a?和?b?有一個不為?true")? if?a?or?b?:?print?("4?-?變量?a?和?b?都為?true,或其中一個變量為?true")? else:?print?("4?-?變量?a?和?b?都不為?true")? if?not(?a?and?b?):?print?("5?-?變量?a?和?b?都為?false,或其中一個變量為?false")? else:?print?("5?-?變量?a?和?b?都為?true")

輸出結(jié)果為:

1?-?變量?a?和?b?都為?true 2?-?變量?a?和?b?都為?true,或其中一個變量為?true 3?-?變量?a?和?b?有一個不為?true 4?-?變量?a?和?b?都為?true,或其中一個變量為?true 5?-?變量?a?和?b?都為?false,或其中一個變量為?false

06 成員運算符

除了以上運算符外,Python還支持成員運算符。以下測試實例中包含一系列成員,例如字符串、列表或元組,如下所示。

in

  • 如果在指定的序列中找到值,返回true,否則返回false

  • x在y序列中:如果x在y序列中,則返回True

not in

  • 如果在指定的序列中沒有找到值,返回true,否則返回false

  • x不在y序列中:如果x不在y序列中,則返回True

以下實例演示了Python所有成員運算符的操作:

a?=?10? b?=?20? list?=?[1,?2,?3,?4,?5?];? if?(?a?in?list):?print?("1?-?變量?a?在給定的列表list中")? else:?print?("1?-?變量?a?不在給定的列表list中") if?(?b?not?in?list?):?print?("2?-?變量?b?不在給定的列表list中") else:?print?("2?-?變量?b?在給定的列表list中") #?修改變量?a?的值? a?=?2? if?(?a?in?list?):?print?("3?-?變量?a?在給定的列表list中") else:?print?("3?-?變量?a?不在給定的列表list?中")

輸出結(jié)果為:

1?-?變量?a?不在給定的列表list?中 2?-?變量?b?不在給定的列表list?中 3?-?變量?a?在給定的列表list?中

07 身份運算符

身份運算符用于比較兩個對象的存儲單元,如下所示。

is

  • is用于判斷兩個標識符是否引自一個對象

  • X is y,類似id(x)==id(y),如果引用的是同一個對象,則返回true,否則返回false

is not

  • is not用于判斷兩個標識符是否引自不同對象

  • x is not y,類似id(a)!=id(b)。如果引用的不是同一個對象,則返回結(jié)果true,否則返回false

以下實例演示了Python所有身份運算符的操作:

a?=?20? b?=?20? if?(?a?is?b?):?print?("1?-?a?和?b?有相同的標識")? else:?print?("1?-?a?和?b?沒有相同的標識")? if?(?a?is?not?b?):?print?("2?-?a?和?b?沒有相同的標識")? else:?print?("2?-?a?和?b?有相同的標識")?#?修改變量?b?的值? b?=?30? if?(?a?is?b?):?print?("3?-?a?和?b?有相同的標識")? else:?print?("3?-?a?和?b?沒有相同的標識")? if?(?a?is?not?b?):?print?("4?-?a?和?b?沒有相同的標識")? else:?print?("4?-?a?和?b?有相同的標識")

輸出結(jié)果為:

1?-?a?和?b?有相同的標識 2?-?a?和?b?有相同的標識 3?-?a?和?b?沒有相同的標識 4?-?a?和?b?沒有相同的標識

is與==的區(qū)別在于:is用于判斷兩個變量引用的對象是否為同一個(同一塊內(nèi)存空間),==用于判斷引用變量的值是否相等。例如:

a?=?[1,?2,?3] b?=?ab?is?a Trueb?==?a Trueb?=?a[?:?] b?is?a Falseb?==?a True

08 運算符優(yōu)先級

按優(yōu)先級從高到低的順序?qū)λ羞\算符排序,結(jié)果如表下所示。

**

  • 指數(shù)(最高優(yōu)先級)

~ + -

  • 按位翻轉(zhuǎn),一元加號和減號(最后兩個的方法名為+@和-@)

* / % //

  • 乘、除、取模和取整除

+ -

  • 加法減法

>> <<

  • 右移、左移運算符

&

  • 位AND

^ |

  • 位運算符

<=?< >?>=

  • 比較運算符

<>?==?!=

  • 等于運算符

= %= /= //= -= += *= **=

  • 賦值運算符

is is not

  • 身份運算符

in not in

  • 成員運算符

not and or

  • 邏輯運算符

以下實例演示了Python中不同運算符按照不同優(yōu)先級的操作:

a?=?20? b?=?10? c?=?15? d?=?5? e?=?0? e?=?(a?+?b)?*?c?/?d#?(?30?*?15?)?/?5? print?("(a + b)?* c / d 運算結(jié)果為:",?e?) e?=?((a?+?b)?*?c)?/?d#?(30?*?15?)?/?5? print?("((a + b)?* c)?/ d 運算結(jié)果為:",?e)? e?=?(a?+?b)?*?(c?/?d);#?(30)?*?(15/5)? print?("(a + b)?*?(c / d)?運算結(jié)果為:",?e)? e?=?a?+?(b?*?c)?/?d;#?20?+?(150/5)? print?("a +?(b * c)?/ d 運算結(jié)果為:",?e)

輸出結(jié)果為:

(a + b)?* c / d 運算結(jié)果為:90 ((a + b)?* c)?/ d 運算結(jié)果為:90 (a + b)?*?(c / d)?運算結(jié)果為:90 a +?(b * c)?/ d 運算結(jié)果為:50

關(guān)于作者:劉鵬,教授,清華大學博士,云計算、大數(shù)據(jù)和人工智能領(lǐng)域的知名專家,南京云創(chuàng)大數(shù)據(jù)科技股份有限公司總裁、中國大數(shù)據(jù)應(yīng)用聯(lián)盟人工智能專家委員會主任。中國電子學會云計算專家委員會云存儲組組長、工業(yè)和信息化部云計算研究中心專家。

高中強,人工智能與大數(shù)據(jù)領(lǐng)域技術(shù)專家,有非常深厚的積累,擅長機器學習和自然語言處理,尤其是深度學習,熟悉Tensorflow、PyTorch等深度學習開發(fā)框架。曾獲“2019年全國大學生數(shù)學建模優(yōu)秀命題人獎”。參與鐘南山院士指導新型冠狀病毒人工智能預測系統(tǒng)研發(fā)項目,與鐘南山院士團隊共同發(fā)表學術(shù)論文。

本文摘編自《Python金融數(shù)據(jù)挖掘與分析實戰(zhàn)》,經(jīng)出版方授權(quán)發(fā)布。(ISBN:9787111696506)

《Python金融數(shù)據(jù)挖掘與分析實戰(zhàn)》

點擊上圖了解及購買

轉(zhuǎn)載請聯(lián)系微信:DoctorData

推薦語:云創(chuàng)大數(shù)據(jù)(上市公司)總裁撰寫,零基礎(chǔ)學會金融數(shù)據(jù)挖掘,配有案例、視頻、代碼、數(shù)據(jù)、習題及答案。

劃重點👇

干貨直達👇

  • 4918字,詳解商品系統(tǒng)的存儲架構(gòu)設(shè)計

  • 人工智能、機器學習、深度學習的關(guān)系,終于有人講明白了

  • 首次公開,用了三年的 pandas 速查表!

  • 盤點數(shù)據(jù)治理的6個價值

更多精彩👇

在公眾號對話框輸入以下關(guān)鍵詞

查看更多優(yōu)質(zhì)內(nèi)容!

讀書?|?書單?|?干貨?|?講明白?|?神操作?|?手把手

大數(shù)據(jù)?|?云計算?|?數(shù)據(jù)庫?|?Python?|?爬蟲?|?可視化

AI?|?人工智能?|?機器學習?|?深度學習?|?NLP

5G?|?中臺?|?用戶畫像?|?數(shù)學?|?算法?|?數(shù)字孿生

據(jù)統(tǒng)計,99%的大咖都關(guān)注了這個公眾號

👇

總結(jié)

以上是生活随笔為你收集整理的多段实例代码详解7大类Python运算符,建议收藏!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。