1. 程式人生 > >小白學 Python(8):基礎流程控制(下)

小白學 Python(8):基礎流程控制(下)

人生苦短,我選Python

前文傳送門

小白學 Python(1):開篇

小白學 Python(2):基礎資料型別(上)

小白學 Python(3):基礎資料型別(下)

小白學 Python(4):變數基礎操作

小白學 Python(5):基礎運算子(上)

小白學 Python(6):基礎運算子(下)

小白學 Python(7):基礎流程控制(上)

迴圈結構

迴圈結構一般而言,就是一直做某件事情,直到滿足某種條件。

正常的 while 迴圈

比如:學習使我快樂,一直學習一直快樂。

這好像和我上面說的定義有點不相符,那麼我再補充一句,直到我不快樂,那麼我就不學習了。

那麼上面這個場景用程式碼怎麼實現呢?

happy = 0

while happy < 10:
    print("學習使我快樂,快樂 + 1,當前快樂值為:", happy)
    happy += 1

print("我不快樂了")

執行結果如下:

學習使我快樂,快樂 + 1,當前快樂值為: 0
學習使我快樂,快樂 + 1,當前快樂值為: 1
學習使我快樂,快樂 + 1,當前快樂值為: 2
學習使我快樂,快樂 + 1,當前快樂值為: 3
學習使我快樂,快樂 + 1,當前快樂值為: 4
學習使我快樂,快樂 + 1,當前快樂值為: 5
學習使我快樂,快樂 + 1,當前快樂值為: 6
學習使我快樂,快樂 + 1,當前快樂值為: 7
學習使我快樂,快樂 + 1,當前快樂值為: 8
學習使我快樂,快樂 + 1,當前快樂值為: 9
我不快樂了

正所謂物極必反,快樂到極致以後就是不快樂,不快樂就不學習了。

while 死迴圈

當然不排除自然界中總有某些大佬,他們能一直學習並且一直快樂下去:

那麼他們的程式碼就和普通人的不一樣,

happy = 0

while True:
    print("學習使大佬快樂,快樂 + 1,當前快樂值為:", happy)
    happy += 1

這個就比較狠了,但是出現一個問題是,現在大佬快樂的停不下來了,這可咋辦,這個時候想讓大佬停止快樂冷靜冷靜就只能祭出我們的大殺器:

不對不對,掏錯了錯了,是這個:

for 迴圈

for 迴圈的一般使用格式如下:

for <variable> in <sequence>:
    <statements>
else:
    <statements>

這裡的 <sequence> 可以是我們學過的字串,也可以是我們將要學的列表,元組,字典等。

話不多說,先來個栗子看看:

錯了錯了,是這個:

for index in "Python":
    print(index)

輸出結果是這樣的:

P
y
t
h
o
n

這裡相當於去迴圈 "Python" 這個字串裡的每位字元。

然後依次列印。

如果需要使用 for 迴圈遍歷數字序列,可以使用內建的 range() 函式。先簡單體驗下:

for index in range(5):
    print(index)

結果如下:

0
1
2
3
4

語法:range(start, stop[, step])

  • start:計數從 start 開始。
  • stop:計數到 stop 為止,但不包括 stop 。
  • step:步長,也叫間隔。

比如向這樣:

腿長任性,一次能走 3 步,那麼它的實現就應該是這樣的:

for index in range(0, 10, 3):
    print(index)

輸出結果如下:

0
3
6
9

迴圈中斷

我們在學習的過程中,總會面對各種各樣的誘惑,比如:

這時,我們快樂的學習過程就不得不中斷了。

而在 Python 中,中斷迴圈有 break 和 continue 兩種。

  • break :結束本次迴圈,跳出所在的迴圈。
  • continue :中斷本次迴圈,繼續進行下一次迴圈。

那麼如果你去開黑,不回來學習了就是 break 。

我們用程式碼描述下這個場景:

happy = 0

while happy < 10:
    happy += 1
    if happy == 5:
        break
    print("學習使我快樂,快樂 + 1,當前快樂值為:", happy)

print("還是開黑更快樂一些~~~")

執行結果如下:

學習使我快樂,快樂 + 1,當前快樂值為: 1
學習使我快樂,快樂 + 1,當前快樂值為: 2
學習使我快樂,快樂 + 1,當前快樂值為: 3
學習使我快樂,快樂 + 1,當前快樂值為: 4
還是開黑更快樂一些~~~

當然,有時候也會有些特殊情況,比如開黑玩了一局以後,還是覺得學習更快樂,接著回來學習:

happy = 0

while happy < 10:
    happy += 1
    if happy == 5:
        continue
    print("學習使我快樂,快樂 + 1,當前快樂值為:", happy)

print("還是學習會更快樂~~~")

執行結果如下:

學習使我快樂,快樂 + 1,當前快樂值為: 1
學習使我快樂,快樂 + 1,當前快樂值為: 2
學習使我快樂,快樂 + 1,當前快樂值為: 3
學習使我快樂,快樂 + 1,當前快樂值為: 4
學習使我快樂,快樂 + 1,當前快樂值為: 6
學習使我快樂,快樂 + 1,當前快樂值為: 7
學習使我快樂,快樂 + 1,當前快樂值為: 8
學習使我快樂,快樂 + 1,當前快樂值為: 9
學習使我快樂,快樂 + 1,當前快樂值為: 10
還是學習會更快樂~~~

是不是在 happy == 5 的時候去打了一局王者發現還是發現學習更加快樂,小編相信每一位粉絲都是這樣的人。

示例程式碼

本系列的所有程式碼小編都會放在程式碼管理倉庫 Github 和 Gitee 上,方便大家取用。

示例程式碼-Github

示例程式碼-Gi