Python條件語句和循環語句

2020-12-11 布衣學Python

01前言

通常都聽到別人說,計算機很牛逼,很聰明,其實計算機一點都不聰明,光是你要跟他溝通,都會氣 shi 你,聰明的是在寫程序的你。

寫程序就是跟計算機溝通,告訴它要做什麼。

竟然是這樣,那麼肯定缺少不了一些溝通邏輯。比如你要告訴計算機在什麼情況下做什麼?或者在哪個時間點做什麼?

這都需要用到邏輯判斷。這一章節,主要就是說這個。

02目錄

03一、條件語句

1、什麼是條件語句

Python 條件語句跟其他語言基本一致的,都是通過一條或多條語句的執行結果( True 或者 False )來決定執行的代碼塊。

Python 程序語言指定任何非 0 和非空(null)值為 True,0 或者 null 為 False。

執行的流程圖如下:

2、if 語句的基本形式

Python 中,if 語句的基本形式如下:

if 判斷條件:執行語句……else: 執行語句……

之前的章節也提到過,Python 語言有著嚴格的縮進要求,因此這裡也需要注意縮進,也不要少寫了冒號

:

if 語句的判斷條件可以用>(大於)、<(小於)、==(等於)、>=(大於等於)、<=(小於等於)來表示其關係。

例如:

輸出的結果為:

不及格

上面也說到,非零數值、非空字符串、非空 list 等,判斷為 True,否則為 False。因此也可以這樣寫:

輸出的結果如下:

可見,把結果列印出來了。

那如果我們把

num

改為空字符串呢?

很明顯,空字符串是為 False 的,不符合條件語句,因此不會執行到

print('Hello Python')

這段代碼。

還有再囉嗦一點,提醒一下,在條件判斷代碼中的冒號

:

後、下一行內容是一定要縮進的。不縮進是會報錯的。

冒號和縮進是一種語法。它會幫助 Python 區分代碼之間的層次,理解條件執行的邏輯及先後順序。

3、if 語句多個判斷條件的形式

有些時候,我們的判斷語句不可能只有兩個,有些時候需要多個,比如上面的例子中大於 60 的為及格,那我們還要判斷大於 90 的為優秀,在 80 到 90 之間的良好呢?

這時候需要用到 if 語句多個判斷條件,

用偽代碼來表示:

if 判斷條件1:執行語句1……elif 判斷條件2: 執行語句2……elif 判斷條件3: 執行語句3……else: 執行語句4……

實例:

輸出的結果:良好

4、if 語句多個條件同時判斷

有時候我們會遇到多個條件的時候該怎麼操作呢?

比如說要求 java 和 python 的考試成績要大於 80 分的時候才算優秀,這時候該怎麼做?

這時候我們可以結合

or

and

來使用。

or (或)表示兩個條件有一個成立時判斷條件成功

and (與)表示只有兩個條件同時成立的情況下,判斷條件才成功。

例如:

輸出結果:

不優秀良好

注意:if 有多個條件時可使用括號來區分判斷的先後順序,括號中的判斷優先執行,此外 and 和 or 的優先級低於 >(大於)、<(小於)等判斷符號,即大於和小於在沒有括號的情況下會比與或要優先判斷。

5、if 嵌套

if 嵌套是指什麼呢?

就跟字面意思差不多,指 if 語句中可以嵌套 if 語句。

比如上面說到的例子,也可以用 if 嵌套來寫。

當然這只是為了說明 if 條件語句是可以嵌套的。如果是這個需求,我個人還是不太建議這樣使用 if 嵌套的,因為這樣代碼量多了,而且嵌套太多,也不方便閱讀代碼。

04二、循環語句

1、什麼是循環語句

一般程式語言都有循環語句,為什麼呢?

那就問一下自己,我們弄程序是為了幹什麼?

那肯定是為了方便我們工作,優化我們的工作效率啊。

而計算機和人類不同,計算機不怕苦也不怕累,也不需要休息,可以一直做。

你要知道,計算機最擅長就是做重複的事情。

所以這時候需要用到循環語句,循環語句允許我們執行一個語句或語句組多次。

循環語句的一般形式如下:

在 Python 提供了 for 循環和 while 循環。

這裡又有一個問題了,如果我想讓他運行了一百次之後停止,那該怎麼做呢?

這時候需要用到一些控制循環的語句:

這些控制語句是為了讓我們告訴程序什麼時候停止,什麼時候不運行這次循環。

2、 for 循環語句

我們先來看下 for 循環語句。

它的流程圖基本如下:

基本的語法格式:

從列印結果來看,它就是把字符串

Hello

一個一個字符的列印出來。

那如果我們把字符串換為字典 dict 呢?

你會發現只列印了字典 dict 中的每一個 key 值。

很多時候,我都是建議大家學到一個新的知識點,都多去嘗試。

你嘗試一遍,自己觀察出來的結論,好過別人說十遍。

如果你不知道怎麼去試?

可以根據我們的例子舉一反三,比如上面的 for 循環,試了字符串,字典,那我們之前學的基本數據類型還有什麼呢?

不記得可以再返回去看看,可以把所有的基本類型都拿去嘗試一下。

比如,你試了之後,會發現整數和浮點數是不可以直接放在 for 循環裡面的。

3、 range() 函數

for 循環還常常和 range() 函數搭配使用的。

如果不知道 range() 函數 , 我們直接通過一段程序來理解。

for i in range(3):print(i)

列印的結果為:

012

可見,列印了 0 到 3 。

使用 range(x) 函數,就可以生成一個從 0 到 x-1 的整數序列。

如果是

range(a,b)

函數,你可以生成了一個左閉右開的整數序列。

其實例子中的

range(3)

可以寫成

range(0,3)

, 結果是一樣的。

其實使用 range() 函數,我們更多是為了把一段代碼重複運行 n 次。

這裡提個問題,你仔細觀察 range() 函數,上面說到的不管是 1 個參數的,還是 2 個參數的都有什麼共同的特點?

不知道你們有沒有發現,他都是每次遞增 1 的。

range(3)

就是 0 ,1,2 ,每次遞增 1 。

range(3,6)

就是 3 ,4 ,5 ,也是每次遞增 1 的。

那能不能每次不遞增 1 呢?

比如我想遞增 2 呢?

在程序的編寫中,肯定會遇到這樣的需求的。而 python 發展至今,range 函數肯定也會有這種功能。

所以 range 函數還有一個三個參數的。

比如

range(0,10,2)

, 它的意思是:從 0 數到 10(不取 10 ),每次間隔為 2 。

4、While 循環語句

While 循環和 for 循環的作用是一樣的。

我們先來看看 While 循環語句的樣子。

程序輸出的結果是:

5050

這個例子是計算 1 到 100 所有整數的和。

5、for 循環和 whlie 循環的區別

之前也提到過了,如果一種語法能表示一個功能,那沒必要弄兩種語法來表示。

竟然都是循環,for 循環和 while 循環肯定有他們的區別的。

那什麼時候才使用 for 循環和 while 循環呢?

for 循環主要用在迭代可迭代對象的情況。while 循環主要用在需要滿足一定條件為真,反覆執行的情況。 (死循環+break 退出等情況。)部分情況下,for 循環和 while 循環可以互換使用。例如:

雖然列印的結果是一樣的,但是細細品味你會發現,他們執行的順序和知道的條件是不同的。

6、嵌套循環

循環語句和條件語句一樣,都是可以嵌套的。

具體的語法如下:

除此之外,你也可以在循環體內嵌入其他的循環體,如在 while 循環中可以嵌入 for 循環, 反之,你可以在 for 循環中嵌入 while 循環

比如:

當我們需要判斷 sum 大於 1000 的時候,不在相加時,可以用到 break ,退出整個循環。

有時候,我們只想統計 1 到 100 之間的奇數和,那麼也就是說當 count 是偶數,也就是雙數的時候,我們需要跳出當次的循環,不想加,這時候可以用到 break

還有:

輸出的結果:

當然,這裡還用到了

for … else

語句。

其實 for 循環中的語句和普通的沒有區別,else 中的語句會在循環正常執行完(即 for 不是通過 break 跳出而中斷的)的情況下執行。

當然有

for … else

,也會有

while … else

。他們的意思都是一樣的。

05三、條件語句和循環語句綜合實例

1、列印九九乘法表

2、判斷是否是閏年

相關焦點

  • Python入門基礎解答條件判斷語句和循環語句的新手使用教程
    無論什麼語言都不會缺少條件判斷語句和循環語句。我們日常中也有條件判斷和循環,條件判斷(明天如果下雨就不出門,如果晴天就出門。);循環(上學朗讀課文,老師說:把文章的第幾段落讀三遍,重複一遍又一遍。)條件判斷計算機之所以能做很多自動化的任務,因為它可以自己做條件判斷。Python條件語句是通過一條或多條語句的執行結果(True或者False)來決定執行的代碼塊。
  • Python智闡4-條件判斷語句和循環語句
    本次主要介紹Python中的條件判斷語句(if-elif-else)和循環語句(while、for)的使用。1、條件判斷語句條件判斷語句格式主要有以下幾種:邏輯:當出現條件判斷語句時,先進行 if 後麵條件判斷,如果結果為真,就執行對應的執行語句(退出整個條件判斷語句),否則就執行 else 對應的執行語句
  • Python while循環語句詳解
    Python 中,while 循環和 if 條件分支語句類似,即在條件(表達式)為真的情況下,會執行相應的代碼塊。
  • Python基礎-While循環語句
    1. while循環語句作用:實現特定代碼重複執行格式:while 條件: 重複執行的一行或多行代碼>解釋:Python 每次會判斷 while 關鍵字後面的條件是否為真, 如果為真, 則執行 while 下面的一行或多行代碼, 直到不滿足條件, 循環執行結束.
  • python循環控制語句
    循環語句語句後面一定要跟:冒號for循環:1.for…in range()遍歷格式:for i in range(5);或者for i in range( 0,10,3 );格式中的1列印i是從0開始後列印到5結束
  • 柳小白Python學習筆記 7 循環語句學習
    昨天學習的是條件語句,今天開始學循環語句。在python中我們可以使用循環語句讓某個語句或代碼組多次執行。這時就會會用到for和while語句。在python中循環語句用於循環執行程序,來處理需要重複處理的任務。
  • Python分支結構(if條件語句)
    在Python程序中有三種基本算法結構,分別是順序結構;分支結構和循環結構。順序結構就是按照語句的自然先後順序進行依次執行,我們之前講解的案例基本都是順序結構,順序結構比較簡單,在此不做贅述,讓我們直接來看分支結構。
  • python學習筆記:條件語句IF
    else 為可選語句,當需要在條件不成立時執行內容則可以執行相關語句if 判斷條件1: 執行語句1……elif 判斷條件2: 執行語句2……elif 判斷條件3: 執行語句3……else: 執行語句4……
  • Python 語句與結構
    1、賦值語句python 的賦值都是指對象的引用。保存的是對象的內存地址。例如PyValue=「今天天氣不錯」 PyValue=「心情也不錯」第一句執行時Python 先在內存中創建字符串對象並賦值」 今天天氣不錯」, PyValue 設置為字符串對象的引用。
  • Python極簡入門:數據類型、條件語句、循環語句、異常處理
    .# apple&another string# mango&another string# carrot&another string# banana&another string二、條件語句1. if 語句if 語句的 expr_true_suite 代碼塊只有當條件表達式 expression 結果為真時才執行,否則將繼續執行緊跟在該代碼塊後面的語句
  • Python循環結構語句
    條件表達式返回值為True,執行循環體中語句;執行完畢後,從新判斷表達式的值,直到表達式的結果為False時,退出循環。,循環正常結束的話,會執行else語句塊如果循環時break退出的,則不走else語句# 語法:while 循環條件:# 循環體# else:# 語句塊
  • Python的循環退出、循環繼續和通過語句
    在for和while循環語句中,當循環條件滿足時,就會一直循環,如果想中途退出循環,該怎麼辦?如果想停止本次循環,而不終止整個循環,該怎麼辦?如果我想寫個不執行任何操作的語句,該怎麼寫?使用break語句時,一般會設置觸發條件,當設置的條件滿足時,執行break語句退出循環。例1:試求給定某一數值的最大公約數。用程序求一個數的最大公約數,可以使用循環語句從大到小迭代所有可能的約數,第一個能整除該數的約數就是這個數的最大公約數。
  • python循環語句for和while用法-py猜數字小遊戲-學習python第4天
    而python程序遇到循環,重複的問題時,就需要使用python循環語句for-in循環或者while循環來解決。這兩者有什麼區別以及如何使用呢?下面羽憶教程為你解答。這時我們如果採取老辦法,重複寫3600次print("python循環語句")是可以完成任務,但是這樣太枯燥、太乏味,作為程式設計師就應該學會變通,所以就出現了python循環語句,利用python循環語句,一小段代碼可以幫你解決重複輸出3600次的煩惱,可見python循環語句主要是用於解決某些重複的代碼工作。那麼有哪些是python循環語句呢?
  • Python基礎教程之循環語句的使用
    ### 2.1 `while` 語句基本語法```python初始條件設置 —— 通常是重複執行的 計數器while 條件(判斷 計數器 是否達到 目標次數): 條件滿足時,做的事情1 處理條件(計數器 + 1)```**注意**:* `while` 語句以及縮進部分是一個 **完整的代碼塊**#### 第一個 while 循環
  • 四、python編程基礎之循環語句:基本語法以及應用實例
    實驗目的:學習python的循環語句實驗環境:已正確安裝python3.51、循環語句的語法循環語句主要應用於多次有規律的重複操作,python中有兩種循環語句,分別為for...in 和while循環。
  • Python while循環語句的使用
    本篇介紹Python循環語句的使用,文中主要討論while循環語句,使用while循環語句可以解決程序中需要重複執行的操作,本文講解的每個案例中都配有流程圖和代碼說明。通過本篇的學習,可以達成如下目標。
  • 一個案例輕鬆認識Python 循環語句(while)——猜數遊戲
    Python 中的循環語句有 for 和 while。一、while 循環while 語句的一般形式:while 判斷條件(condition):      執行語句(statements)……注意冒號和縮進。另外,在 Python 中沒有 do..while 循環。
  • 零基礎學編程python第十課,for……in循環語句與while循環語句
    很高興又和大家見面了。上一課,我們學習了兩種新的數據類型: 列表與字典。這節課,帶大家來學習一下【循環】,什麼是循環? 就是把一件事情一遍又一遍重複做多遍。Python江湖裡,提供了兩種循環語句, for…in循環語句與while循環語句。下面, 我們先來看一下第一種循環語句for…in循環語句, 簡稱for循環。還記得在上節課中, 我們對同學點名嗎? 回顧一下點名代碼。
  • Python語法教程:循環語句
    定義循環語句就是在某種條件下,循環的執行某段代碼塊,並在符合條件的情況下跳出該段循環,其目的是處理想要進行處理的相同任務,它的關鍵詞主要以:for、while來標識,執行的流程用下面的圖來說明:語法編寫循環語句時,其語法是這樣的,如下圖:
  • Python的range函數與for循環語句
    本篇介紹Python for循環語句和range函數的使用,文中主要討論for循環語句,Python的for循環語句類似於shell或是腳本語言中的foreach循環,可以迭代序列對象。使用range函數可以讓Python的for循環提供類似於傳統的for循環功能。通過本篇的學習,可以達成如下目標。