Python入門教程之運(yùn)算符與控制流
Python 中的運(yùn)算符
什么是運(yùn)算符?舉個(gè)簡(jiǎn)單的例子 4 +5 = 9 。 例子中,4 和 5 被稱為操作數(shù),"+" 稱為運(yùn)算符。
1 . 求冪運(yùn)算符
在 Java 中如果我們想對(duì)一個(gè)數(shù)進(jìn)行求冪運(yùn)算,我們可能要借助于 Math 庫中的 pow() 函數(shù),但是在 Python 中我們可以使用兩個(gè)連續(xù)的 * 表示求冪運(yùn)算。
a = 5 ** 2 print a
2 . // 運(yùn)算符
可能很多人要說了,這個(gè)我認(rèn)識(shí),我打注釋經(jīng)常用雙斜杠,可是很尷尬, Python 中的單行注釋符號(hào)為 # ,多行注釋可以使用 ''' ,那么 // 是用來干嘛呢?用來求兩數(shù)相除的整數(shù)部分。
a = 10.0 // 3 print a
這個(gè)時(shí)候就會(huì)輸出 3.0 ,也就是相除的整數(shù)部分,余數(shù)被忽略。
3 . & , | 運(yùn)算符
這兩個(gè)運(yùn)算符大家都認(rèn)識(shí), & 按位與 , | 按位或,下面來講講這兩個(gè)運(yùn)算符的運(yùn)算原理,看一個(gè)數(shù) 7&18 等于多少呢? 放到編譯器里運(yùn)行一下試試吧
a = 7 & 18 print a
打印的結(jié)果為 2 ,為什么呢?很簡(jiǎn)單,我們首先需要將 7 和 18 轉(zhuǎn)換為 二進(jìn)制, 7-> 00000111 18->00010010 , 然后將這兩個(gè)二進(jìn)制進(jìn)行與運(yùn)算,什么是與運(yùn)算呢?只需要記住兩個(gè)數(shù)同一位置上都為 1 的時(shí)候結(jié)果為 1 ,其他都為 0 即可。運(yùn)算過程如下
很明顯結(jié)果是 2 , | 運(yùn)算符和 & 運(yùn)算步驟一樣,不過 | 運(yùn)算過程中,兩個(gè)數(shù)同一位置上只要有一個(gè)是 1 ,則結(jié)果就是 1 ,可以自己去運(yùn)算一下,這里就不在贅述了。
4 . >>,<< 運(yùn)算符
第一眼看到這個(gè)符號(hào),我的第一反應(yīng)是遠(yuǎn)遠(yuǎn)大于和遠(yuǎn)遠(yuǎn)小于,這是是右移和左移的意思,左移和右移?怎么移?同樣的需要將十進(jìn)制數(shù)轉(zhuǎn)化為二進(jìn)制形式,然后進(jìn)行左移和右移,其實(shí)左移一次等于是讓一個(gè)數(shù)乘以 2 ,左移 n 次就是讓一個(gè)數(shù)乘以 2 的 n 次,右移則相反,是除以 2 的 ‘n' 次方。
# coding=utf-8 # 左移2位 a = 5 << 2 print a # 右移三位 b = 32 >> 3 print b
5 . not, and, or 運(yùn)算符
這三個(gè)是邏輯運(yùn)算符,在其他的編程語言中如果你想表示或與非,你可能會(huì)使用這樣的格式 ||,&&,! ,但是在 Python 中需要使用 or,and,not 。
a = True b = False c = not a d = a and b e = a or b print c print d print e
結(jié)果依次為 False False True
6 . 我們不在介紹運(yùn)算符,來看看運(yùn)算符的優(yōu)先級(jí),我做了個(gè)圖
越靠近魚頭,等級(jí)越高。
Python 控制流
所謂控制流,無非也就是 if..else,while,for 等?;镜氖褂么蠹叶紩?huì),不過 Python 總有它特殊的地方,下面來看看。
1 . if...else
if 判斷語句有一個(gè)值得介紹的地方,如下所示
a = 10 if 5 <= a <= 10: print a
在 Java 語言中,你恐怕要這么寫
int a = 10; if(a >= 5 && a <= 10){ System.out.println(a); }
2 . while , for
唯一需要記住的一點(diǎn)就是,在 Python 中,無論是 for 還是 while ,都可以像 if 一樣,在后面加 else 語句, else 語句在循環(huán)語句跳出來之后會(huì)執(zhí)行。
a = False while a: print ("I am while") else: print ("I am else") for i in range(1, 2): print ("I am for") else: print ("I am else")
小提示: range()
函數(shù)可以設(shè)置步數(shù)間隔,什么意思?自己去試試吧~
總結(jié)
以上就是關(guān)于Python中運(yùn)算符與控制流的全部內(nèi)容,這篇文章講的是基礎(chǔ)入門知識(shí),但也是很重要的一部分,希望對(duì)大家使用Python能有所幫助。
相關(guān)文章
Python機(jī)器學(xué)習(xí)之決策樹和隨機(jī)森林
本文主要介紹了機(jī)器學(xué)習(xí)之決策樹和隨機(jī)森林,詳細(xì)的介紹了實(shí)現(xiàn) 原理機(jī)器實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-07-07python矩陣基本運(yùn)算的實(shí)現(xiàn)
本文主要介紹了python?矩陣的基本運(yùn)算,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07簡(jiǎn)單的python協(xié)同過濾程序?qū)嵗a
這篇文章主要介紹了簡(jiǎn)單的python協(xié)同過濾程序,分享了相關(guān)代碼示例,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01python判斷windows系統(tǒng)是32位還是64位的方法
這篇文章主要介紹了python判斷windows系統(tǒng)是32位還是64位的方法,實(shí)例分析了兩種解決方法,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-05-05python實(shí)現(xiàn)web應(yīng)用框架之增加響應(yīng)對(duì)象
這篇文章主要介紹了python利用web應(yīng)用框架如何增加響應(yīng)對(duì)象的,文中有相應(yīng)的代碼示例,對(duì)大家的學(xué)習(xí)或工作有一定的參考價(jià)值,需要的同學(xué)可以參考下2023-05-05pygame實(shí)現(xiàn)雷電游戲雛形開發(fā)
這篇文章主要為大家詳細(xì)介紹了pygame實(shí)現(xiàn)雷電游戲開發(fā)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11