python之今天你入門了嗎(二)

2021-10-24 05:12:31 字數 4887 閱讀 3782

在程式設計的世界中,流程控制是程式設計師必備的基礎技能,流程控制決定了程式按照什麼樣的方式去執行,本節將介紹流程控制相關語法。

順序流程控制語句,就是程式從上到下按順序依次進行。例如:

# 接收使用者輸入的姓名、年齡、位址並輸出資訊

name =

input

("請輸入您的姓名:"

)age =

int(

input

("請輸入您的年齡:"))

address =

input()

print

(f"我叫,我今年歲,來自"

)

根據條件表示式的結果執行相應的**。

適用場景:一旦涉及到選擇問題,就需要用到分支結構。

1.單分支語句

語法:

if 判斷條件:

條件成立時執行的語句

案例:

# 檢視是否中獎

winning_number =

"159756"

customer_number =

input

("請輸入您的號碼查詢是否中獎:"

)if customer_number == winning_number:

print

("恭喜您,喜提壹佰萬元!!!"

)

2.雙分支語句

語法:

if 判斷條件:

條件成立時執行的語句

else:

條件不成立時執行的語句

案例:

# 檢視是否中獎

winning_number =

"159756"

customer_number =

input

("請輸入要查詢的號碼:"

)if customer_number == winning_number:

print

("恭喜您,喜提壹佰萬元!!!"

)else

:print

("很遺憾您沒有中獎,不要灰心,再接再厲!"

)

3.多分支語句

語法:

if 條件1:

條件1成立執行的語句

elif 條件2:

條件2成立執行的語句

elif 條件3:

條件3成立執行的語句

......

else:

以上條件都不成立時執行的語句

總結:else是可選的,可寫可不寫。多分支語句用於替代其它語言中的 switch…case… 語句。

4.分支巢狀結構

分支巢狀就是if塊中巢狀if,可以巢狀多個。

# 進站模擬

ticket =

input

("是否有票?(yes/no)"

)if ticket ==

"yes"

: contraband =

input

("行李內是否有違禁品?(yes/no)"

)if contraband ==

"yes"

:print

("您的行李中含有違禁品,請開啟行李配合檢查"

)elif contraband ==

"no"

:print

("檢查無誤,請通過,祝您旅行愉快。"

)else

:print

("輸入錯誤"

)elif ticket ==

"no"

:print

("不好意思,請您先購票再進站"

)else

:print

("輸入錯誤"

)

注意事項:

5.三元表示式

格式:

變數 = 條件成立返回的結果 if 判斷條件 else 條件不成立返回的結果
意義:簡化雙分支**的一種形式

# 使用者輸入兩個不同的值,輸出較大的乙個

num1 =

int(

input

("請輸入第乙個數:"))

num2 =

int(

input

("請輸入第二個數:"))

# 雙分支結構

# if num1 > num2:

# max_num = num1

# else:

# max_num = num2

# 三元表示式

max_num = num1 if num1 > num2 else num2

print

(max_num)

迴圈結構就是按照某個條件判斷是否重複執行的結構。

適用場景:當某一段**重複被執行時,就需要用到迴圈結構,以此來簡化**結構。

1.while迴圈

while迴圈在某條件下,用於迴圈執行程式,以此來處理需要重複處理的任務。

# 輸出1-10的和

num, sum_ =1,

0while num <11:

sum_ = sum_ + num

num +=

1print

("1-10的和為:"

, sum_)

while

true

:print

("hello world!"

)

# 輸出多行* * * * * *,要求一次只輸出乙個

j =1

while j <7:

i =1while i <7:

print

("*"

, end=

" ")

i +=

1print()

j +=

1

2.迴圈關鍵字

退出迴圈,迴圈不再進行。

# 連續輸出自然數

num =

1while

true

:print

(num, end=

" ")

num +=

1break

# 不寫break的話會一直輸出,只能人為停,這裡加上則只迴圈一次。

# 當前還剩10張票,第五張票不賣,其他票賣光為止

ticket =

11while ticket >1:

ticket -=

1if ticket ==5:

print

("很抱歉,編號5的票已經被其他使用者預訂,無法**"

)continue

print

(f"編號的票成功**"

)print

("今日票已售空,請您選擇其他日期的"

)

# 所有票據全域性售賣完成,正常下班。如果一旦發生反恐演練,提前下班

import time

import random

ticket =

1# 票的號碼

while ticket <=10:

time.sleep(random.randint(0,

1))# #反恐演練

# if ticket == 5:

# print("有內鬼終止交易,提前下班...")

# break

print

("成功售出"

, ticket,

"號票"

) ticket +=

1else

:print

("所有的票都賣完啦!沒有突發情況!正常下班!"

)

3.for迴圈

主要針對一組序列進行遍歷檢視,如列表,字串,元組,檔案。

# 第乙個例項 遍歷字串

for letter in

'python'

:print

('當前字母 :'

, letter)

# 第二個例項 遍歷列表

fruits =[,

'banana'

,'peach'

]for fruit in fruits:

print

(fruit)

# 使用for迴圈,判斷乙個數是否為質數

num =

int(

input

("請輸入乙個數字:"))

for i in

range(2

,num)

:if num % i ==0:

print

("不是質數"

)break

else

:print

("是質數"

)

4.range()函式
# 構造乙個從[1,10]的數列

range(1

,11)# 列印[1,10]

for i in

range(1

,11):

print

(i)# 從[0,100]的所有偶數

range(0

,101,2

)# 正確

range

(101,2

)# 錯誤

# 構造乙個從[100,1]的所有數

range

(100,0

,-1)

# 構造乙個從[100,1]的所有奇數

range(99

,0,-

2)

總結:

一般情況下,二種方式都可以實現迴圈

你今天Python了嗎?(下)

在體驗了wxpython的強大之後,讓我們把注意力集中到twisted上來。在c 的世界裡,你會發現乙個很棒的網路應用框架,那就是ace了 在python的地盤,twisted則是在網路應用框架中當之無愧的老大。twisted是乙個純python的網路應用框架。由於twisted社群十分的活躍,你可...

今天你笑了嗎?

1 有次等公共汽車時,開過去一輛寶馬,旁邊一位高人對他身邊的人說 看,剛過去那輛就是ibm.2 我一朋友在聯通實習,一天,一老頭走近來,劈頭蓋臉就來句 給我辦張移動卡,好吧?然後我那朋友頭也不抬的就來句 師傅,有人來砸場子 3 同事去見客戶,可能是緊張,一開口便是 劉先生你好,請問你貴姓啊?汗啊 4...

今天,你學習了嗎?

1 對meta的理解 在每個html的頁面中,有這樣一行 charset utf 8 因為每次新建html檔案自動生成這行,一直沒在乎過這個標籤有什麼意義。今天看到這樣的 name viewport content width device width,minimum scale 1.0,maxim...