【Python基礎入門系列】第04天:Python 流程控制

在編程的世界中,流程控制是程序員運行的基礎,流程控制決定了程序按照什么樣的方式去執行,本節給大家介紹 Python 流程控制相關語法。


if 語句

if 語句表示如何發生什么樣的條件,執行什么樣的邏輯。

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

1)單一分支

if?條件表達式:【代碼塊】
【后續代碼】
執行流程:如果條件表達式為真,則執行【代碼塊】。否則不執行,直接執行if語句后面的【后續代碼】
注意:【代碼塊】必須縮進單if語句可以嵌套

2) 雙向分支

if?條件表達式:【語句塊A】
else:【語句塊B】
【后續代碼】
執行流程:如果條件表達式為真,執行【語句塊A】然后執行【后續代碼】,否則執行【語句塊B】,然后再執行【后續代碼】,二選一,不可能既執行A有執行B
注意:【語句塊A】和【語句塊B】必須縮進if-else可以嵌套

3)多向條件分支

if?條件1:【代碼段1】
elif?條件2:【代碼段2】
............
elif?條件n:
【代碼段n】
else:【else語句塊】
【后續代碼】
執行流程:多選一,如果滿足條件1,執行【代碼段1】,然后跳出if-elif語句,執行【后續代碼】,否則判斷是否滿足條件2,如果滿足執行【代碼段2】,然后跳出if-elif語句,執行【后續代碼】...。如果所有條件都不滿足,執行【else語句塊】,然后再執行【后續代碼】。
注意:else是可選的,可以寫也可以不寫。

示例:


x = int(input("Please enter an integer: "))x = -5
if x < 0:x = 0print('Negative changed to zero')
elif x == 0:print('Zero')
elif x == 1:print('Single')
else:print('More')

可能會有零到多個 elif 部分,else 是可選的。關鍵字 ‘elif’ 是 ’else if’ 的縮寫,這個可以有效地避免過深的縮進。if … elif … elif … 序列用于替代其它語言中的 switch 或 case 語句。


for 循環

Python for 循環可以遍歷任何序列的項目,如一個 列表 或者一個 字符串。

語法:

for 循環的語法格式如下:

 

'''
for 后跟變量名,in 后跟序列,注意加冒號
for 循環每次從序列中取一個值放到變量中
此處的序列主要指 列表 元組 字符串 文件
'''
for iterating_var in sequence:
statements(s)

示例如下:

 
for letter in 'Python': # 第一個實例print('當前字母 :', letter)fruits = ['banana', 'apple', 'mango']for fruit in fruits: # 第二個實例print('當前字母 :', fruit)print("Good bye!")

也可以通過索引地址來遍歷內容

 
fruits = ['banana', 'apple', 'mango']
for index in range(len(fruits)):print('當前水果 :', fruits[index])print("Good bye!")

循環概念

廣義:一個周期現象或者重復出現的情況,這種狀態被稱為循環

狹義:在滿足條件的情況下,反復執行某一段代碼,在編程語言中出現的這種現象被稱為循環。被反復執行的這段代碼被稱為循環體

當反復執行某段代碼時,需要在合適的時機將循環停止下來,否則會產生死循環

Python中提供的循環語句:while語句,for-in語句

?

while的使用

1 while語法

while 表達式:循環體

工作原理:遇到while語句時,首先計算表達式的值,如果表達式的值為假,則跳過整個while語句,繼續執行下面的代碼;如果表達式的值為真,則執行循環體

2 while-else

while 表達式:
循環體
else:【else語句塊】

說明:當while語句執行完成之后,執行【else語句塊】,如果用break跳出循環則不執行else

3 死循環

在循環語句中,表達式永遠為真的循環

while?True:
#循環體while?1:
#循環體

4 while語句的嵌套

while 條件1:? ? #外層循環【語句塊A】while 條件2:? #內存循環
【語句B】

執行流程:首先判斷外層循環的條件1,如果為真,則執行循環體中的【語句塊A】,執行內層循環,判斷條件2是否成立,如果成立,執行內層循環的【語句塊B】,執行完內層循環后,重新判斷外層循環條件....

  • 特點:外層循環走一步,內層循環執行一遍

  • 外層循環和內層循環的循環變量必須不同

語法:

 

while 判斷條件:
執行語句……

示例:

count = 0
while (count < 9):print( 'The count is:', count)count = count + 1print("Good bye!")

?

也可以在 while 循環中添加判斷邏輯


count = 0
while count < 5:print(count, " is less than 6")count = count + 1
else:print(count, " is not less than 6")

?


range() 函數

如果你需要一個數值序列,內置函數 range() 會很方便,它生成一個等差級數鏈表:

語法:

 

range (start, end, scan):

參數含義:

  • start:計數從 start 開始。默認是從 0 開始。例如 range(5) 等價于 range(0, 5);

  • end:計數到 end 結束,但不包括 end.例如:range(0, 5) 是[0, 1, 2, 3, 4]沒有 5

  • scan:每次跳躍的間距,默認為1。例如:range(0, 5) 等價于 range(0, 5, 1)

示例:

 
for i in range(6):print(i)
print(range(6),'finish')for i in range(6,10):print(i)
print(range(6,10),'finish')for i in range(6,12,2):print(i)
print(range(6,12,2),'finish')

需要迭代鏈表索引的話,如下所示結合使 用 range() 和 len():


a = ['i', 'love', 'coding', 'and', 'free']
for i in range(len(a)):print(i, a[i])

break 用法和continue、pass

break用于結束當前循環。只對當前這一重循環起作用。break只能出現在循環中。

break示例:


for letter in 'ityouknow': # 第一個實例if letter == 'n': # 字母為 n 時中斷breakprint ('當前字母 :', letter)

?

continue 語句用來跳過當前循環的剩余語句,然后重新判斷循環條件,開啟下一輪循環。continue只能出現在while和for循環中

continue??示例:

 
for letter in 'ityouknow': # 第一個實例
if letter == 'n': # 字母為 n 時跳過輸出continueprint ('當前字母 :', letter)

?

pass?示例:

 

while True:
pass # Busy-wait for keyboard interrupt (Ctrl+C)


# 這通常用于創建最小結構的類:

class MyEmptyClass:
pass

總結

本節給大家介紹了 Python 語法中的流程控制相關語法,方便后期在代碼邏輯中進行條件控制,留一個小問題,試著去用循環打印一下九九乘法表,答案下期揭曉。

參考:

http://www.pythondoc.com/pythontutorial3
https://www.runoob.com/python3/python3-tutorial.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/455897.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/455897.shtml
英文地址,請注明出處:http://en.pswp.cn/news/455897.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

UGLY NUMBERS II

不去重錯誤版 17.4.23 long isMin (long a, long b) { if (a > b) a b; return a;}long nthUglyNumber(long n) { long *l (long*)malloc(n*sizeof(long)); for (long i 0; i < n; i) l[i] 0; l[0] 1; long p2, p3, p5 0; for(long i 0; i < n - 1; i) { l[i …

excel合并兩列內容_還在為合并WPS表格(Excel)中兩列內容而犯愁?此方法簡單高效...

我們在處理WPS表格(Excel)數據時&#xff0c;時常需要將兩列甚至更多列的內容合并顯示在同一列中&#xff0c;就像這樣&#xff1a;這個時候大家是怎么解決的呢&#xff1f;路人&#xff1a;復制粘貼So easy&#xff01;小杜&#xff1a;不止兩三行啊……路人&#xff1a;復制粘…

Css基本語法及頁面引用

Css基本語法及頁面引用 CSS代碼出現在三個地方 </head><body><b style....>兄弟連</b> <!-- 1. 行內樣式,內聯樣式, 作為 style屬性值 --></body>css基本語法 css的定義方法是&#xff1a; 選擇器 { 屬性:值; 屬性:值; 屬性:值;} 選…

【Python基礎入門系列】第05天:Python函數

前面我們寫過九九乘法表&#xff0c;但如果我要七七乘法表或五五乘法表的話&#xff0c;你會看到三者代碼極其類似&#xff0c;只是循環變量不同&#xff0c;那么如何做到代碼重用&#xff0c;而不是簡單拷貝黏貼修改呢&#xff0c;其實可是使用函數完成這一功能! 先來試著看一…

【Java基礎】 JQuery的常用操作

jQuery的常用操作一、隱藏顯示對象id為test的元素的display修改成了“none”&#xff0c;即隱藏了id為test的元素&#xff1a;$(#test).css(display,none)或$(#test).style.display"none"我們經常用到的是切換一個元素的隱藏與現實&#xff0c;下面給出代碼&#xff…

store_coding_state (cs_cm)的作用

// 以下是對當前宏塊進行編碼&#xff08;這里的編碼主要目的是為了計算按當前組合方式編碼// 生成碼流的大小&#xff0c;因此編碼前要保存當前編碼狀態&#xff0c;編碼完成后必須恢復現場&#xff09;// S T O R E C O D I N G S T A T E //-----------------------…

第十五屆北京師范大學程序設計競賽決賽(網絡同步賽) B lca水 D 思維,找規律...

第十五屆北京師范大學程序設計競賽決賽&#xff08;網絡同步賽&#xff09; B. Borrow Classroom 題意&#xff1a;一棵樹&#xff0c;點 1為根&#xff0c;一個人從點 b到 點 c再到點 1&#xff0c;第二個人從點 a出發&#xff0c;問第二個人能否截住第一個人。 tags&#xff…

macbook所有型號大全_蘋果筆記本型號大全

很多朋友在選購蘋果筆記本也就是MacBook的時候都會考慮究竟買哪一個系列會比較好&#xff0c;下面就為大家介紹一下蘋果筆記本型號大全都有什么&#xff0c;希望以下的介紹能夠幫助到您。蘋果筆記本型號大全目前蘋果筆記本有以下的幾個主要的型號&#xff1a;1、MacBook Air是目…

【Python基礎入門系列】第06天:Python 模塊和包

在計算機程序的開發過程中&#xff0c;隨著程序代碼越寫越多&#xff0c;在一個文件里代碼就會越來越長&#xff0c;越來越不容易維護。 為了編寫可維護的代碼&#xff0c;我們把很多函數分組&#xff0c;分別放到不同的文件里&#xff0c;這樣&#xff0c;每個文件包含的代碼…

Css中的選擇器

Css選擇器 CSS代碼用來修飾 HTML元素. 要用CSS代碼設置樣式, 首先要選中HTML元素. 用來選中 元素的 代碼稱為 選擇器, 或 選擇符. html元素是指, 標簽與標簽包裹內容的整體. 常用的選擇器有如下幾種&#xff1a; 1、標簽選擇器 標簽選擇器&#xff0c;此種選擇器影響范圍大…

福州聯通與市政府攜手 共筑新型智慧城市

“福州聯通今年將投入專項資金&#xff0c;在福州市區建設NB-IoT網絡&#xff0c;包括2000個載扇部署&#xff0c;建設一張覆蓋完備、性能領先的窄帶物聯網。”據介紹&#xff0c;去年9月&#xff0c;福州聯通與福州市政府正式簽署《共同推進窄帶物聯網&#xff08;NB-IoT&…

流媒體技術的國內外動態

1、大規模流媒體應用中關鍵技術的研究 支持大規模用戶在線使用的流媒體應用是Internet中極富潛力的一項“重磅級用”,但由于Internet缺乏服務質量(QoS)與相應的安全保障,并且網絡和終端系統又存在著較大的異構性,這使得在Internet上構建支持大規模用戶的在線流媒體應用面臨很多…

空間直線與平面的交點

這內容屬于計算幾何&#xff0c;在 3D游戲開發編程基礎 或者在游戲開發中的數學和物理算法 這種資料上也可以找到相關的內容和代碼。或者更廣泛點稱為是計算機圖形學&#xff0c; 接下來我們進入正題&#xff0c;如果直線不與平面平行&#xff0c;將存在交點。如下圖所示&#…

iphone導出視頻 無法連接到設備_拷貝iphone照片,顯示無法連接設備?TRIZ 3秒鐘解決...

手機存儲滿了&#xff0c;想把手機里面的照片和視頻拷貝出來。 又不想交給蘋果cloud的“蘋果稅”。USB手動連上IPHONE&#xff0c;結果每次復制了幾百兆&#xff0c;就會彈出“無法連接設備”&#xff0c;導致拷貝失敗。并且每次重新連接之后&#xff0c;刪掉的照片又出現在手機…

【Python基礎入門系列】第07天:Python 數據結構--序列

python內置序列類型最常見的是列表&#xff0c;元組和字符串。&#xff08;序列是python中最基礎的數據結構&#xff0c;而數據結構是計算機存儲&#xff0c;組織數據的方式。&#xff09; 另外還提供了字典和集合的數據結構&#xff0c;但他們屬于無順序的數據集合體&#xf…

Css顏色和文本字體

Css顏色,文本字體 css顏色表示法 顏色名表示&#xff0c;比如&#xff1a;red 紅色&#xff0c;gold 金色16進制數值表示&#xff0c;比如&#xff1a;#ff0000 表示紅色&#xff0c;這種可以簡寫成 #f00RGB顏色: 紅(R)、綠(G)、藍(B)三個顏色通道的變化 background-color: r…

springBoot(20):使用Spring Session實現集群-redis

一、session集群的解決方案1.1、擴展指定server利用Servlet容器提供的插件功能&#xff0c;自定義HttpSession的創建和管理策略&#xff0c;并通過配置的方式替換掉默認的策略。缺點&#xff1a;耦合Tomcat/Jetty等Servlet容器&#xff0c;不能隨意更換容器。1.2、利用Filter利…

docker desktop ubuntu鏡像_原創 | Docker入門,看了不理解,假一賠命

寫在前面這篇博客適合誰&#xff1f;對于Docker并不了解&#xff0c;只是有一點模糊的感覺&#xff0c;覺得Docker可以當成虛擬機用之類的只是下載了Docker軟件&#xff0c;對于怎么配置&#xff0c;怎么玩&#xff0c;第一步干什么&#xff0c;完全一無所知其二&#xff0c;我…

Windows - Windows下安裝MSI程序遇到2503和2502錯誤

三個步驟可以解決這個問題&#xff1a; 1&#xff09; 以管理員身份開啟命令行模式并鍵入msiexec /package <msi文件路徑> 2&#xff09; 修改組策略 計算機配置 ->> 管理模板 ->> Windows組件 ->> Windows Installer ->> 始終以提升的權限進行安…

如何確定h.264的碼率

A:如何確定h.264的碼率&#xff1f; 碼率 編碼產生的總比特數 * 幀頻 / 編碼總幀數碼率控制機制就是使編碼器編碼產生的碼流盡量符合你設定的碼率。從上面的公式可以看出&#xff0c;當編碼幀數和幀頻確定后&#xff0c;碼率控制要做的就是控制編碼產生的比特數。 A:我現在想…