首頁>技術>

閱讀目錄

寫在前面python運算子基礎例項python運算子優先順序Python表示式練習總結

前言

運算子用於執行程式程式碼運算,會針對一個以上運算元專案來進行運算。例如:2+3,其運算元是2和3,而運算子則是“+”。在計算器語言中運算子大致可以分為5種類型:算術運算子、連線運算子、關係運算符、賦值運算子和邏輯運算子。運算子也是計算機裡比較好理解的人類語言之一,只要稍微懂點數學的,都能看懂算數運算子。在Python中常見的運算子有:+、-、*、/、**/<、>、!=、//、%、&、|、^、~、>>、<<、<=、>=、==、not、and、or。在接下來的博文中再一一介紹這些運算子的具體事例。

寫在前面 python你不去認識它,可能沒什麼,一旦你認識了它,你就會愛上它

python運算子基礎例項

程式碼正文&講解:

# coding=utf-8

#兩個數字相加

sumNumber=1+2

print(sumNumber) #輸出結果:3

#兩個字串相加

sumString="Nice work"

print(sumString) #輸出結果:Nice work

#兩個數字相減

subNumber=2-1

print(subNumber) #輸出結果:1

#兩個數字相乘或者字串重複

multiplicationNumber=2*3

print(multiplicationNumber) #輸出結果:6

multiplicationString="hello"*2

print(multiplicationString) #輸出結果:hellohello

#/---關於*號重複字串之前的部落格已經介紹過了---/

#兩個數相除

divisionNumber=9/2

print(divisionNumber) #輸出結果:4

divisionNumber=9.0/2

print(divisionNumber) #輸出結果:4.5

divisionNumber=9/2.0

print(divisionNumber) #輸出結果:4.5

#/---除數或被除數中有任意一個是小數的話,商也會保留小數,反之取整---/

#求冪運算

powerNumber=2**3 #相當於2的3次冪,就是2*2*2 關於冪運算大家應該在數學裡都很熟悉了

print powerNumber #輸出結果:8

#小於符號,返回值是bool值

lessThan=1<2

print(lessThan) #輸出結果:True

lessThan=1<1

print(lessThan) #輸出結果:False

#大於符號,返回值是bool值

moreThan=2>1

print(moreThan) #輸出結果:True

moreThan=2>2

print(moreThan) #輸出結果:False

#不等於符號 返回值是Bool值

notEqual=1!=2

print(notEqual) #輸出結果:True

notEqual=1!=1

print(notEqual) #輸出結果:False

#除法運算// 返回商的整數部分,拋棄餘數

divisorNumber=10//3

print(divisorNumber) #輸出結果:3

#除法運算% 返回商的餘數部分,拋棄商

divisorNumber=10%3

print(divisorNumber) #輸出結果:1

divisorNumber=10%1

print(divisorNumber) #輸出結果:0 /--沒有餘數則返回0--/

divisorNumberx=10//3 #divisorNumberx是商的整數部分

divisorNumbery=10%3 #divisorNumbery是餘數

divisorNumberz=3*divisorNumberx+divisorNumbery #divisorNumberz是除數乘以商的整數部分加上餘數,得到的divisorNumberz的值就是被除數

print(divisorNumberz) #輸出結果:10

#按位與運算&, 按位與是指一個數字轉化為二進位制,然後這些二進位制的數按位來進行與運算

operationNumber=7&18

print operationNumber #輸出結果:2

'''

這個有點繞,稍微多說下,如果對二進位制不是太熟的朋友,可以開啟電腦自帶的計算器,按住win+q,輸入"calculator"。

然後在開啟的計算器設定成程式設計師模式, 就是View(檢視)->>programmer(程式設計師).

然後我們將7轉為二進位制:111,自動補全8位:00000111,然後將18轉為二進位制補全8位後得到:00010010

最後將 00000111

跟 00010010 按位進行與運算,

/-

對與運算不熟的朋友可以看看百度百科的介紹,還是很詳細的。

邏輯運算_百度百科

-/

得到結果:00000010

我們都知道10二進位制→十進位制=2,所以7跟18的按位與的結果是二進位制10(十進位制2)

'''

#按位或運算|, 按位或是指一個數字轉化為二進位制,然後這些二進位制的數按位來進行或運算

operationNumber=7|18

print operationNumber #輸出結果:23 #結題思路和按位與運算的一樣,可以參考按位與運算

#按位異或

operationNumber=7^18

print operationNumber #輸出結果:21 #結題思路和按位與運算的一樣,可以參考按位與運算

#按位翻轉 ~ 按位翻轉公式: ~x= - (x+1)

operationNumber=~12 #~12=- (12+1) = -13

print operationNumber #輸出結果:-13 #結題思路和按位與運算的一樣,可以參考按位與運算

#左移<<

'''

比如18左移就是將他的二進位制形式00100100左移,得到00100100(36)。

左移規律:左移一個單位相當於乘2,左移兩個單位相當於乘以4,左移三個單位相當於乘以8,

即: 左移n個單位相當於乘以2的n次冪

'''

operationNumber=12<<1

print operationNumber #輸出結果:24

operationNumber=3<<3

print operationNumber #輸出結果:24

#右移>>

'''

理解左移以後,右移就很好理解了。

右移是左移的逆運算,將對應的二進位制數向右移動。

右移規律:右移一個單位相當於除以2,右移兩個單位相當於除以4,右移三個單位相當於除以8,

即: 右移n個單位相當於除以2的n次冪

'''

operationNumber=12>>1

print operationNumber #輸出結果:6

operationNumber=12>>2

print operationNumber #輸出結果:3

#小於等於<= 比較運算,小於或等於返回一個bool值

operationNumber=3<=3

print operationNumber #輸出結果:True

operationNumber=3<=2

print operationNumber #輸出結果:False

#大於等於>= 比較運算,大於或等於返回一個bool值

operationNumber=2>=3

print operationNumber #輸出結果:False

operationNumber=3>=2

print operationNumber #輸出結果:True

#比較兩個物件是否相等==

operationNumber=3==2

print operationNumber #輸出結果:False

operationString="hi"=="hi"

print operationString #輸出結果:True

#邏輯非 not

operationx=True

operationy=not operationx

print operationy #輸出結果:False

operationz=False

print not operationz #輸出結果:True

#邏輯與 and

'''

True and True = True

True and False = False

False and True = False

False and False = False

'''

print True and True #輸出結果:True

#邏輯或 or

'''

True or True = True

True or False = True

False or True = True

False or False = False

'''

print False or False #輸出結果:False 這裡的這些運算可能按位運算會感覺比較麻煩,不過沒有關係,大家用多了就熟練了。

python運算子優先順序

1.python運算子優先順序排行榜:

在一個表示式中可能包含多個有不同運算子連線起來的、具有不同資料型別的資料物件;由於表示式有多種運算,不同的運算順序可能得出不同結果甚至出現錯誤運算錯誤,因為當表示式中含多種運算時,必須按一定順序進行結合,才能保證運算的合理性和結果的正確性、唯一性。 優先順序從上到下依次遞減,最上面具有最高的優先順序,逗號運算子具有最低的優先順序。表示式的結合次序取決於表示式中各種運算子的優先順序。優先順序高的運算子先結合,優先順序低的運算子後結合,同一行中的運算子的優先順序相同。 程式碼正文&講解:

# coding=utf-8

#優先順序的簡單例項

priorityNumber=2+1*4

print priorityNumber #輸出結果:6

#優先順序使用例項

#以下優先順序排名從高到低,在同一運算中,先執行優先順序高的再執行低的,以此類推。

#Top 1:函式呼叫、定址、下標

#Top 2:冪運算**

priorityNumber=2*2**3

print priorityNumber #輸出結果:16

#Top 3:翻轉運算~

#Top 4:正負號

print 1+2*-3 #輸出結果:-5

#Top 5:*、/、%

print 2+1*2/5 #輸出結果:2

#Top 6:+、-

print 3<<2+1 #輸出結果:24

#Top 7:<<、>>

#Top 8:按位&、^、|

#Top 9:比較運算子

priority=2*3+2<=2+1*7

print priority #輸出結果:True

#Top 10:邏輯的not and or

#Top 11:lambda表示式

2.python運算子優先順序使用規律:

程式碼正文&講解:

#python優先順序使用規律

#1、一般情況下是左結合的

#ps:在沒有更高優先順序運算子,即只有同級運算子時時從左到右結合

print 1+2+3*5+5 #輸出結果:23

#2、出現賦值的時候一般是右結合

#ps:在有賦值運算子時,是右結合,即先算出1+2的值以後再賦值給priority

priority=1+2

print priority #輸出結果:23

2.python運算子優先順序大招:

大家可能會覺得Python運算子的優先順序不容易記憶,而且有時候還容易混淆。在實際運用中根據業務邏輯可能我們知道要先做什麼再做什麼,但是卻忘記Python運算子的優先順序了,該怎麼辦?這裡教大家一個殺手鐧,絕對百試不爽。 程式碼正文&講解:

#python運算子優先順序大招

'''比如說有這個需求:

去商店買水,買3瓶水,每瓶5塊,再買一個綠箭(假設綠箭3塊),總共多少錢?

這個簡單的應用非常明顯,需要先用乘法再用加法,如果這裡你忘記了乘法和加法的優先順序,可以這樣:

'''

print (3*5)+3 #輸出結果:18

#ps: 這只是一個簡單的例子,只是為了告訴大家實際應用中實在不行咱就放大招。有備無患。

Python表示式

Python表示式基本概念:

python中,值、變數和運算子共同組成的整體稱為表示式 程式碼正文&講解:

#python表示式

#1 字串表示式

"Hello"

#2 計算表示式

2+3

#3 賦值表示式

first=0

#4 變量表達式

first

#5 值表示式

3

#等等

練習

弄清楚與或非二進位制運算熟記python運算子優先順序關係去商店買水,買3瓶水,每瓶5塊,趕上雙11,商店促銷,現在每瓶降價1.5塊,總共多少錢。(需要用放大招和不放大招兩種方式)

總結

關於python的運算子大家如果有什麼疑問或者補充的可以踴躍發言,我們一起探討。

多說一句,很多人學Python過程中會遇到各種煩惱問題,沒有人解答容易放棄。小編是一名python開發工程師,這裡有我自己整理了一套最新的python系統學習教程,包括從基礎的python指令碼到web開發、爬蟲、資料分析、資料視覺化、機器學習等。想要這些資料的可以關注小編,並在後臺私信小編:“01”即可領取。

18
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 鴻蒙開源第三方元件——B站開源彈幕庫引擎的遷移