国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

Python運(yùn)算符,python入門到精通[五]

2019-11-14 16:58:15
字體:
供稿:網(wǎng)友

運(yùn)算符用于執(zhí)行程序代碼運(yùn)算,會針對一個以上操作數(shù)項目來進(jìn)行運(yùn)算。例如:2+3,其操作數(shù)是2和3,而運(yùn)算符則是“+”。在計算器語言中運(yùn)算符大致可以分為5種類型:算術(shù)運(yùn)算符、連接運(yùn)算符、關(guān)系運(yùn)算符、賦值運(yùn)算符和邏輯運(yùn)算符。運(yùn)算符也是計算機(jī)里比較好理解的人類語言之一,只要稍微懂點(diǎn)數(shù)學(xué)的,都能看懂算數(shù)運(yùn)算符。在Python中常見的運(yùn)算符有:+、-、*、/、**/<、>、!=、//、%、&、|、^、~、>>、<<、<=、>=、==、not、and、or。在接下來的博文中再一一介紹這些運(yùn)算符的具體事例。

v寫在前面

python你不去認(rèn)識它,可能沒什么,一旦你認(rèn)識了它,你就會愛上它

vpython運(yùn)算符基礎(chǔ)實(shí)例

代碼正文&講解:

# coding=utf-8#兩個數(shù)字相加sumNumber=1+2PRint(sumNumber)      #輸出結(jié)果:3#兩個字符串相加sumString="Nice work"print(sumString)      #輸出結(jié)果:Nice work#兩個數(shù)字相減subNumber=2-1print(subNumber)      #輸出結(jié)果:1#兩個數(shù)字相乘或者字符串重復(fù)multiplicationNumber=2*3print(multiplicationNumber)      #輸出結(jié)果:6multiplicationString="hello"*2print(multiplicationString)      #輸出結(jié)果:hellohello#/---關(guān)于*號重復(fù)字符串之前的博客已經(jīng)介紹過了---/#兩個數(shù)相除divisionNumber=9/2print(divisionNumber)      #輸出結(jié)果:4divisionNumber=9.0/2print(divisionNumber)      #輸出結(jié)果:4.5divisionNumber=9/2.0print(divisionNumber)      #輸出結(jié)果:4.5#/---除數(shù)或被除數(shù)中有任意一個是小數(shù)的話,商也會保留小數(shù),反之取整---/#求冪運(yùn)算powerNumber=2**3 #相當(dāng)于2的3次冪,就是2*2*2 關(guān)于冪運(yùn)算大家應(yīng)該在數(shù)學(xué)里都很熟悉了print powerNumber       #輸出結(jié)果:8#小于符號,返回值是bool值lessThan=1<2print(lessThan)        #輸出結(jié)果:TruelessThan=1<1print(lessThan)        #輸出結(jié)果:False#大于符號,返回值是bool值moreThan=2>1print(moreThan)        #輸出結(jié)果:TruemoreThan=2>2print(moreThan)        #輸出結(jié)果:False#不等于符號 返回值是Bool值notEqual=1!=2print(notEqual)        #輸出結(jié)果:TruenotEqual=1!=1print(notEqual)        #輸出結(jié)果:False#除法運(yùn)算// 返回商的整數(shù)部分,拋棄余數(shù)divisorNumber=10//3print(divisorNumber)        #輸出結(jié)果:3#除法運(yùn)算% 返回商的余數(shù)部分,拋棄商divisorNumber=10%3print(divisorNumber)        #輸出結(jié)果:1divisorNumber=10%1print(divisorNumber)        #輸出結(jié)果:0 /--沒有余數(shù)則返回0--/divisorNumberx=10//3         #divisorNumberx是商的整數(shù)部分divisorNumbery=10%3         #divisorNumbery是余數(shù)divisorNumberz=3*divisorNumberx+divisorNumbery    #divisorNumberz是除數(shù)乘以商的整數(shù)部分加上余數(shù),得到的divisorNumberz的值就是被除數(shù)print(divisorNumberz)        #輸出結(jié)果:10#按位與運(yùn)算&, 按位與是指一個數(shù)字轉(zhuǎn)化為二進(jìn)制,然后這些二進(jìn)制的數(shù)按位來進(jìn)行與運(yùn)算OperationNumber=7&18print operationNumber        #輸出結(jié)果:2'''這個有點(diǎn)繞,稍微多說下,如果對二進(jìn)制不是太熟的朋友,可以打開電腦自帶的計算器,按住win+q,輸入"calculator"。然后在打開的計算器設(shè)置成程序員模式, 就是View(查看)->>programmer(程序員).然后我們將7轉(zhuǎn)為二進(jìn)制:111,自動補(bǔ)全8位:00000111,然后將18轉(zhuǎn)為二進(jìn)制補(bǔ)全8位后得到:00010010最后將   00000111跟       00010010 按位進(jìn)行與運(yùn)算,/-對與運(yùn)算不熟的朋友可以看看百度百科的介紹,還是很詳細(xì)的。http://baike.baidu.com/link?url=lfGJREBvGCY5j7VdF2OO9n2mtIbSyNUD7lZyyY74QIetguL5lXIQUxY38Yr-p4z4WdUvHUKGjw9CDfagiun2Ea-/得到結(jié)果:00000010我們都知道10二進(jìn)制→十進(jìn)制=2,所以7跟18的按位與的結(jié)果是二進(jìn)制10(十進(jìn)制2)'''#按位或運(yùn)算|, 按位或是指一個數(shù)字轉(zhuǎn)化為二進(jìn)制,然后這些二進(jìn)制的數(shù)按位來進(jìn)行或運(yùn)算operationNumber=7|18print operationNumber        #輸出結(jié)果:23   #結(jié)題思路和按位與運(yùn)算的一樣,可以參考按位與運(yùn)算#按位異或operationNumber=7^18print operationNumber        #輸出結(jié)果:21   #結(jié)題思路和按位與運(yùn)算的一樣,可以參考按位與運(yùn)算#按位翻轉(zhuǎn) ~   按位翻轉(zhuǎn)公式: ~x= - (x+1)operationNumber=~12  #~12=- (12+1) = -13print operationNumber        #輸出結(jié)果:-13   #結(jié)題思路和按位與運(yùn)算的一樣,可以參考按位與運(yùn)算#左移<<'''比如18左移就是將他的二進(jìn)制形式00100100左移,得到00100100(36)。左移規(guī)律:左移一個單位相當(dāng)于乘2,左移兩個單位相當(dāng)于乘以4,左移三個單位相當(dāng)于乘以8,即:      左移n個單位相當(dāng)于乘以2的n次冪'''operationNumber=12<<1print operationNumber        #輸出結(jié)果:24operationNumber=3<<3print operationNumber        #輸出結(jié)果:24#右移>>'''理解左移以后,右移就很好理解了。右移是左移的逆運(yùn)算,將對應(yīng)的二進(jìn)制數(shù)向右移動。右移規(guī)律:右移一個單位相當(dāng)于除以2,右移兩個單位相當(dāng)于除以4,右移三個單位相當(dāng)于除以8,即:      右移n個單位相當(dāng)于除以2的n次冪'''operationNumber=12>>1print operationNumber        #輸出結(jié)果:6operationNumber=12>>2print operationNumber        #輸出結(jié)果:3#小于等于<= 比較運(yùn)算,小于或等于返回一個bool值operationNumber=3<=3print operationNumber        #輸出結(jié)果:TrueoperationNumber=3<=2print operationNumber        #輸出結(jié)果:False#大于等于>= 比較運(yùn)算,大于或等于返回一個bool值operationNumber=2>=3print operationNumber        #輸出結(jié)果:FalseoperationNumber=3>=2print operationNumber        #輸出結(jié)果:True#比較兩個對象是否相等==operationNumber=3==2print operationNumber        #輸出結(jié)果:FalseoperationString="hi"=="hi"print operationString        #輸出結(jié)果:True#邏輯非 notoperationx=Trueoperationy=not operationxprint operationy        #輸出結(jié)果:Falseoperationz=Falseprint not operationz        #輸出結(jié)果:True#邏輯與 and'''True and True = TrueTrue and False = FalseFalse and True = FalseFalse and False = False'''print True and True        #輸出結(jié)果:True#邏輯或 or'''True or True = TrueTrue or False = TrueFalse or True = TrueFalse or False = False'''print False or False        #輸出結(jié)果:False

這里的這些運(yùn)算可能按位運(yùn)算會感覺比較麻煩,不過沒有關(guān)系,大家用多了就熟練了。

vpython運(yùn)算符優(yōu)先級

1.python運(yùn)算符優(yōu)先級排行榜: 

在一個表達(dá)式中可能包含多個有不同運(yùn)算符連接起來的、具有不同數(shù)據(jù)類型的數(shù)據(jù)對象;由于表達(dá)式有多種運(yùn)算,不同的運(yùn)算順序可能得出不同結(jié)果甚至出現(xiàn)錯誤運(yùn)算錯誤,因?yàn)楫?dāng)表達(dá)式中含多種運(yùn)算時,必須按一定順序進(jìn)行結(jié)合,才能保證運(yùn)算的合理性和結(jié)果的正確性、唯一性。

優(yōu)先級從上到下依次遞減,最上面具有最高的優(yōu)先級,逗號操作符具有最低的優(yōu)先級。表達(dá)式的結(jié)合次序取決于表達(dá)式中各種運(yùn)算符的優(yōu)先級。優(yōu)先級高的運(yùn)算符先結(jié)合,優(yōu)先級低的運(yùn)算符后結(jié)合,同一行中的運(yùn)算符的優(yōu)先級相同。

代碼正文&講解:

# coding=utf-8#優(yōu)先級的簡單實(shí)例priorityNumber=2+1*4print priorityNumber      #輸出結(jié)果:6#優(yōu)先級使用實(shí)例#以下優(yōu)先級排名從高到低,在同一運(yùn)算中,先執(zhí)行優(yōu)先級高的再執(zhí)行低的,以此類推。#Top 1:函數(shù)調(diào)用、尋址、下標(biāo)#Top 2:冪運(yùn)算**priorityNumber=2*2**3print priorityNumber      #輸出結(jié)果:16#Top 3:翻轉(zhuǎn)運(yùn)算~#Top 4:正負(fù)號print 1+2*-3      #輸出結(jié)果:-5#Top 5:*、/、%print 2+1*2/5      #輸出結(jié)果:2#Top 6:+、-print 3<<2+1      #輸出結(jié)果:24#Top 7:<<、>>#Top 8:按位&、^、|#Top 9:比較運(yùn)算符priority=2*3+2<=2+1*7print priority      #輸出結(jié)果:True#Top 10:邏輯的not and or#Top 11:lambda表達(dá)式

2.python運(yùn)算符優(yōu)先級使用規(guī)律: 

代碼正文&講解:

#python優(yōu)先級使用規(guī)律#1、一般情況下是左結(jié)合的#ps:在沒有更高優(yōu)先級運(yùn)算符,即只有同級運(yùn)算符時時從左到右結(jié)合print 1+2+3*5+5      #輸出結(jié)果:23#2、出現(xiàn)賦值的時候一般是右結(jié)合#ps:在有賦值運(yùn)算符時,是右結(jié)合,即先算出1+2的值以后再賦值給prioritypriority=1+2print priority       #輸出結(jié)果:23

2.python運(yùn)算符優(yōu)先級大招: 

大家可能會覺得Python運(yùn)算符的優(yōu)先級不容易記憶,而且有時候還容易混淆。在實(shí)際運(yùn)用中根據(jù)業(yè)務(wù)邏輯可能我們知道要先做什么再做什么,但是卻忘記Python運(yùn)算符的優(yōu)先級了,該怎么辦?這里教大家一個殺手锏,絕對百試不爽。

代碼正文&講解:

#python運(yùn)算符優(yōu)先級大招'''比如說有這個需求:        去商店買水,買3瓶水,每瓶5塊,再買一個綠箭(假設(shè)綠箭3塊),總共多少錢?   這個簡單的應(yīng)用非常明顯,需要先用乘法再用加法,如果這里你忘記了乘法和加法的優(yōu)先級,可以這樣:'''print (3*5)+3       #輸出結(jié)果:18#ps: 這只是一個簡單的例子,只是為了告訴大家實(shí)際應(yīng)用中實(shí)在不行咱就放大招。有備無患。
vPython表達(dá)式

Python表達(dá)式基本概念: 

python中,值、變量和運(yùn)算符共同組成的整體稱為表達(dá)式

代碼正文&講解:

#python表達(dá)式#1 字符串表達(dá)式"Hello"#2 計算表達(dá)式2+3#3 賦值表達(dá)式first=0#4 變量表達(dá)式first#5 值表達(dá)式3#等等
v博后練習(xí)

應(yīng)上一篇博客Python基本語法[二],python入門到精通[四]園友的意見,給出瀏覽博客后的練習(xí)。如果大家有什么有意思的題目也可以拿出來一起搗鼓,或者留作下一篇博客的"博后練習(xí)"。

練習(xí):

  • 弄清楚與或非二進(jìn)制運(yùn)算
  • 熟記python運(yùn)算符優(yōu)先級關(guān)系
  • 去商店買水,買3瓶水,每瓶5塊,趕上雙11,商店促銷,現(xiàn)在每瓶降價1.5塊,總共多少錢。(需要用放大招和不放大招兩種方式)
v博客總結(jié)

關(guān)于python的運(yùn)算符大家如果有什么疑問或者補(bǔ)充的可以踴躍發(fā)言,我們一起探討。

 


作  者:請叫我頭頭哥
出  處:http://m.survivalescaperooms.com/toutou/
關(guān)于作者:專注于微軟平臺的項目開發(fā)。如有問題或建議,請多多賜教!
版權(quán)聲明:本文版權(quán)歸作者和博客園共有,歡迎轉(zhuǎn)載,但未經(jīng)作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文鏈接。
特此聲明:所有評論和私信都會在第一時間回復(fù)。也歡迎園子的大大們指正錯誤,共同進(jìn)步。或者直接私信
聲援博主:如果您覺得文章對您有幫助,可以點(diǎn)擊文章右下角推薦一下。您的鼓勵是作者堅持原創(chuàng)和持續(xù)寫作的最大動力!


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 丹东市| 侯马市| 平定县| 乡宁县| 东兰县| 张家口市| 克拉玛依市| 北流市| 蓝田县| 乌什县| 苏州市| 清徐县| 寿光市| 独山县| 红桥区| 长兴县| 偃师市| 白银市| 桐城市| 高平市| 九寨沟县| 贞丰县| 阿尔山市| 石台县| 高尔夫| 宜良县| 灌南县| 岳阳市| 新疆| 株洲县| 达拉特旗| 滦平县| 汝州市| 淮阳县| 拜城县| 太仓市| 罗城| 邹平县| 读书| 喀喇沁旗| 金阳县|