Python入門系列13 - 流程控制語法篇
Python入門系列13

流程控制語法篇
本篇文字為1745字,閱讀時間約為7分鐘。
1
前言
今天要介紹的是python中的程序控制關鍵詞,也就是條件,以及python的包、模塊的概念。
2
條件控制、循環(huán)控制
在步入正題之前,先來闡述一個概念 --- 表達式(運算符 和 操作數所構成的)。
它長什么樣子呢?如下:
a?=?1?+?2?+?3
a?=?[1,2,3,4]
a?>?b
而現在寫的代碼,就是用類似上面的表達式所構成的,我們可以通過條件控制,循環(huán)控制來使代碼形成具有邏輯的體系。
打開IDEL,按下Ctrl + n打開文本編輯器,后續(xù)設計到代碼塊的格局。或者點擊idle的File --- > New File 也是一樣的。
1.條件控制? (if ,if? else, if elif)
之前一直說過的,計算機世界中實際上映射了現實生活中的例子!在現實生活中,舉個例子:如果我當年好好學習,那么我現在早就是大神了!這樣的話語就是條件控制,當然現實世界并不存在如果,說多了如果都是僥幸心理罷了。
if代表的就是如果。
if :?

需要注意的是:Python 不想其他語言通過{}來控制代碼的作用域,在之前的小課堂就說過,寫代碼時通過4空格來控制!
如果條件為真,就走條件里的內容,否則就走其它的條件里的內容,else就是其它的意思。
if - else:

if - elif:

給個經常用到的小例子吧,不要小瞧if - else!我們生活中的各種賬號登錄,可以來寫一個小程序看看:

要說明的是,我上面的截圖中,有一點是不符合python官方規(guī)范的!賦值的前兩步驟,是兩個恒定不變的字符串,這樣的東西在編程中稱之為常量!常量正規(guī)寫法應該大寫!所以下面我修改了....
代碼本文版:
CORRECT_USER?=?'sssyyy'
CORRECT_PASSWORD?=?'123456'
username?=?input('請輸入登錄的用戶名:\n')
password?=?input('請輸入登錄的密碼:\n')
if?CORRECT_USER ==?username?and?CORRECT_PASSWORD?==?password?:
????print('登陸成功了!')
else?:
????print('用戶名或者密碼錯誤!')通過上面的小程序,將前幾章的小知識串聯起來了一部分。通過if來判斷是否登錄成功,有變量的賦值操作,還有 and 、== 操作符,以及input()這樣的python自帶方法。
注意input():

所以當我們輸入1的時候,實際上進去的是字符串類型,這也是為什么我小程序中是將字符串賦值給了變量。
2. 循環(huán)控制???(while? ,for ...? in ,continue,break)
循環(huán)控制:依然是以現實生活中舉例子吧,有些朋友們一定聽說過暴力破解,在登錄某些網站時,通過不斷對其密碼的排列組合進行登錄,也就是所謂的窮舉。每登錄一次,換一次密碼組合嘗試,最終達到對比出正確的密碼進行登錄。而這種思想,就是在循環(huán)控制下實現的。
while中文含義是在…期間。
while:

如何跳出呢?繼續(xù)寫個小例子來演示,現在有個場景,每次將變量a加2,如果當a大于10,則結束while循環(huán)。

Tips:
a?=?1
print(f'當前的值為?{a}')f'{變量名字}'? ----->? 這樣的語法是python3.6 以上的新特性,支持直接將字符串進行格式化。而不需要自己手動在后面累加。
while - else:

for ,為了的意思,for關鍵詞在之前有介紹過,我們可以通過for來遍歷序列(str、list、tuple)、字典(dict)、集合(set)這樣的類型。。
for:

Tips:
print()第二個參數添加end,就是每次追加'',而print默認追加\n換行符
print('',end?=?'')
來介紹一個python中比較屌的內置方法 --- > range()。
range()經常與for套用在一起使用,比如現在需要循環(huán)10次,每次循環(huán)打印出數字!如何去寫:

如果每次遞增2個數字,再去打印呢?

如果我想倒過來打印呢?

Tips:
range(a,b,c)? --->? a,起始的數值 ;b,結束的數值;c,步長,類似之前介紹的切片特性的步長機制!
3
循環(huán)控制的跳出
在上面的while中,我介紹了通過一種“活”條件來實現跳出,那么有沒有方法直接可以跳出循環(huán)控制呢!一定是有的,就是python中的關鍵詞:break,continue
break:中文意思打破,中斷!是不是很通俗易懂,再循環(huán)中加上break字眼,即可中斷程序。
場景:數字a初始值為1,在while循環(huán)中,每次循環(huán)加1,當a = 10時,中斷程序,并且輸出中斷程序。(初學者可以自己去idle中嘗試動手!)

continue:中文有繼續(xù)的意思,所以在使用循環(huán)時符合當前條件,continue后面的代碼都不執(zhí)行,跳過后進行繼續(xù)下一次循環(huán)。
場景:數字a初始值為1,在for循環(huán)中,每次將a累加1,一共循環(huán)20次并打印輸出結果,在循環(huán)第10次的時候,跳過累加,打印出當前a的值。

4
總結
到現在python的流程控制也講完了。基本上到這里如果有思路,愛動手的同學,已經可以自己開始編程了。無論學習哪種語言,重要的還是編程的思想!有了思想,無非就是需要熟悉熟悉語法罷了。來看看到現在為止,點亮了多少小圖標了!

