国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Python學(xué)習(xí)之路6-用戶輸入和while循環(huán)

wfc_666 / 2737人閱讀

摘要:本章主要介紹如何進(jìn)行用戶輸入,循環(huán),以及與循環(huán)配合使用的語(yǔ)句。函數(shù)在中,使用函數(shù)獲取用戶輸入,這里請(qǐng)注意的返回值為字符串。值得提醒的是,編寫循環(huán)時(shí)應(yīng)避免死循環(huán),或者叫做無(wú)限循環(huán),比如循環(huán)忘記了變量自增。

《Python編程:從入門到實(shí)踐》筆記。
本章主要介紹如何進(jìn)行用戶輸入,while循環(huán),以及與循環(huán)配合使用的break, continue語(yǔ)句。
1. input() 函數(shù)

在Python中,使用input()函數(shù)獲取用戶輸入,這里請(qǐng)注意:input()的返回值為字符串。如果輸入的是數(shù)字,并且要用于后續(xù)計(jì)算,需要進(jìn)行類型轉(zhuǎn)換。
input()函數(shù)可以傳入字符串參數(shù)作為輸入提示,如下:

# 代碼:
number = input()
# 判斷數(shù)據(jù)類型的兩種方法
print(type(number))
print(isinstance(number, str))

print(int(number) ** 2)    # int()函數(shù)將字符串轉(zhuǎn)換成整數(shù)

# 如果提示超過(guò)一行,可以將提示放在變量中,再將變量傳入input();
# 并且最好在提示后面留一個(gè)空格以區(qū)分提示和用戶輸入
message = input("Tell me something, and I will repeat it back to you: ")
print(message)

# 結(jié)果:
123

True
15129
Tell me something, and I will repeat it back to you: Hello, everyone!
Hello, everyone!

判斷奇偶(作為對(duì)前文常見運(yùn)算的補(bǔ)充):取模運(yùn)算%,返回余數(shù)

# 代碼:
number = input("Enter a number, and I"ll tell you if it"s even or odd: ")
number = int(number)

if number % 2:
    print("
The number " + str(number) + " is even.")
else:
    print("
The number " + str(number) + " is odd.")

# 結(jié)果:
Enter a number, and I"ll tell you if it"s even or odd: 123

The number 123 is even.
2. while 循環(huán)簡(jiǎn)介

for循環(huán)用于針對(duì)集合中的每個(gè)元素的一個(gè)代碼塊,而while循環(huán)不斷地運(yùn)行,直到指定的條件不滿足為止。比如,讓用戶選擇何時(shí)退出:

# 代碼:
prompt = "
Tell me something, and I will repeat it back to you:"
prompt += "
Enter "quit" to end the program. "
message = ""
while message != "quit":
    message = input(prompt)
    if message != "quit":
        print(message)

# 結(jié)果:
Tell me something, and I will repeat it back to you:
Enter "quit" to end the program. Hello everyone!
Hello everyone!

Tell me something, and I will repeat it back to you:
Enter "quit" to end the program. Hello again.
Hello again.

Tell me something, and I will repeat it back to you:
Enter "quit" to end the program. quit
2.1 使用標(biāo)志

在上述代碼中我們直接對(duì)輸入數(shù)據(jù)進(jìn)行判斷,這樣做在簡(jiǎn)單的程序中可行,但復(fù)雜的程序中,如果有多個(gè)狀態(tài)同時(shí)決定while循環(huán)的繼續(xù)與否,要是還用上述的方法,則while循環(huán)的條件判斷將很長(zhǎng)很復(fù)雜,這時(shí)可以定義一個(gè)變量作為標(biāo)志來(lái)代替多個(gè)條件。使用標(biāo)志來(lái)改寫上述代碼:

prompt = "
Tell me something, and I will repeat it back to you:"
prompt += "
Enter "quit" to end the program. "

active = True
while active:
    message = input(prompt)
    if message != "quit":
        active = False
    else:
        print(message)

在復(fù)雜的程序中,如很多事件都會(huì)導(dǎo)致程序停止運(yùn)行的游戲中,標(biāo)志很有用:在其中的任何一個(gè)事件導(dǎo)致活動(dòng)標(biāo)志變?yōu)?b>False時(shí),主游戲循環(huán)將退出。

2.2 使用break退出循環(huán)

要立即退出while或者for循環(huán),不在執(zhí)行循環(huán)中余下的代碼,也不管條件測(cè)試的結(jié)果如何,可使用break語(yǔ)句。再將上述使用標(biāo)志的代碼改寫為break:

prompt = "
Tell me something, and I will repeat it back to you:"
prompt += "
Enter "quit" to end the program. "

while True:
    message = input(prompt)
    if message != "quit":
        break
    print(message)
2.3 在循環(huán)中使用continue

如果滿足某條件時(shí)要返回循環(huán)開始處,而不是跳出循環(huán),則使用continue語(yǔ)句。以下是打印1到10中的所有奇數(shù)的代碼:

# 代碼:
count = 0
while count < 10:
    count += 1
    if count % 2 == 0:
        continue
    print(count)

# 結(jié)果:
1
3
5
7
9

break與continue的區(qū)別break跳過(guò)循環(huán)體內(nèi)余下的所有代碼,并跳出循環(huán);continue跳過(guò)循環(huán)體內(nèi)余下的所有代碼,回到循環(huán)體開始處繼續(xù)執(zhí)行,而不是跳出循環(huán)體。
值得提醒的是,編寫循環(huán)時(shí)應(yīng)避免死循環(huán),或者叫做無(wú)限循環(huán),比如while循環(huán)忘記了變量自增。

3. 使用while循環(huán)來(lái)處理列表和字典 3.1 在列表之間移動(dòng)元素

將未驗(yàn)證用戶經(jīng)驗(yàn)證后變?yōu)橐羊?yàn)證用戶:

# 代碼:
unconfirmed_users = ["alice", "brian", "candace"]
confirmed_users = []

while unconfirmed_users:
    current_user = unconfirmed_users.pop()

    print("Verifying user: " + current_user.title())
    confirmed_users.append(current_user)

print("
The following users have been confirmed:")
for confirmed_user in confirmed_users:
    print(confirmed_user.title())

# 結(jié)果:
Verifying user: Candace
Verifying user: Brian
Verifying user: Alice

The following users have been confirmed:
Candace
Brian
Alice
3.2 刪除包含特定值的所有列表元素

之前的章節(jié)中使用remove()函數(shù)來(lái)刪除列表中的值,但只刪除了列表中的第一個(gè)指定值,以下代碼循環(huán)刪除列表中指定的值:

# 代碼:
pets = ["dog", "cat", "dog", "goldfish", "cat", "rabbit", "cat"]
print(pets)

while "cat" in pets:
    pets.remove("cat")

print(pets)

# 結(jié)果:
["dog", "cat", "dog", "goldfish", "cat", "rabbit", "cat"]
["dog", "dog", "goldfish", "rabbit"]
3.3 使用用戶輸入來(lái)填充字典
# 代碼:
responses = {}

# 設(shè)置一個(gè)標(biāo)志,指出調(diào)查是否繼續(xù)
polling_active = True
while polling_active:
    # 提示輸入被調(diào)查者的名字和回答
    name = input("
What is your name? ")
    response = input("Which mountain would you like to climb someday? ")

    # 將回答存入字典
    responses[name] = response
    
    # 是否還有人要參與調(diào)查
    repeat = input("World you like to let another person respond?(yes/ no) ")
    if repeat == "no":
        polling_active = False

# 調(diào)查結(jié)束,輸出結(jié)果
print("
--- Poll Results ---")
for name, response in responses.items():
    print(name + " world like to climb " + response + ".")
    
# 結(jié)果:
What is your name? Eric
Which mountain would you like to climb someday? Denali
World you like to let another person respond?(yes/ no) yes

What is your name? Lynn
Which mountain would you like to climb someday? Devil"s Thumb
World you like to let another person respond?(yes/ no) no

--- Poll Results ---
Eric world like to climb Denali.
Lynn world like to climb Devil"s Thumb.
迎大家關(guān)注我的微信公眾號(hào)"代碼港" & 個(gè)人網(wǎng)站 www.vpointer.net ~

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/41796.html

相關(guān)文章

  • Python全棧之路系列之基礎(chǔ)篇

    摘要:是個(gè)的一種實(shí)現(xiàn)方式,編譯代碼為字節(jié)碼,然后由虛擬機(jī)執(zhí)行,這意味著此時(shí)程序與程序沒(méi)有區(qū)別,只是源代碼不一樣。原文鏈接全棧之路系列文章 Python的誕生 Python是著名的龜叔Guido van Rossum(吉多·范羅蘇姆)在1989年圣誕節(jié)期間,為了打發(fā)無(wú)聊的圣誕節(jié)而編寫的一個(gè)編程語(yǔ)言。 showImg(https://segmentfault.com/img/remote/146...

    muddyway 評(píng)論0 收藏0
  • Python學(xué)習(xí)之路9-文件異常

    摘要:本章主要是學(xué)習(xí)的文件操作,主要是從文件中讀取數(shù)據(jù)以及將數(shù)據(jù)存儲(chǔ)到文件中,還有錯(cuò)誤處理,異常類,模塊等。函數(shù)返回一個(gè)文件對(duì)象,用于接收該對(duì)象。異常中使用被稱為異常的特殊對(duì)象來(lái)管理程序執(zhí)行期間發(fā)生的錯(cuò)誤。 《Python編程:從入門到實(shí)踐》筆記。本章主要是學(xué)習(xí)Python的文件操作,主要是從文件中讀取數(shù)據(jù)以及將數(shù)據(jù)存儲(chǔ)到文件中,還有錯(cuò)誤處理,異常類,json模塊等。 1. 從文件中讀數(shù)據(jù) ...

    chenatu 評(píng)論0 收藏0
  • [Python學(xué)習(xí)之路] 練習(xí) 簡(jiǎn)單的名片管理系統(tǒng)

    摘要:名片管理系統(tǒng)新建名片全部名片查詢名片修改名片退出系統(tǒng)功能新建名片輸入返回上一層請(qǐng)輸入姓名姓名長(zhǎng)度不符合位以內(nèi)請(qǐng)輸入姓名請(qǐng)輸入年齡請(qǐng)輸入電話號(hào)碼電話號(hào)碼長(zhǎng)度不符合位請(qǐng)輸入電話號(hào)碼請(qǐng)輸入號(hào)碼請(qǐng)輸入電子郵箱請(qǐng)輸入所屬公司電話號(hào)碼長(zhǎng)度不符合位請(qǐng)輸 list1 = [] def show_card(): print(****************************************...

    Amio 評(píng)論0 收藏0
  • Python學(xué)習(xí)之路20-數(shù)據(jù)模型

    摘要:前言數(shù)據(jù)模型其實(shí)是對(duì)框架的描述,它規(guī)范了這門語(yǔ)言自身構(gòu)件模塊的接口,這些模塊包括但不限于序列迭代器函數(shù)類和上下文管理器。上述類實(shí)現(xiàn)了方法,它可用于需要布爾值的上下文中等。但多虧了它是特殊方法,我們也可以把用于自定義數(shù)據(jù)類型。 《流暢的Python》筆記。本篇是Python進(jìn)階篇的開始。本篇主要是對(duì)Python特殊方法的概述。 1. 前言 數(shù)據(jù)模型其實(shí)是對(duì)Python框架的描述,它規(guī)范了...

    ad6623 評(píng)論0 收藏0
  • Python基礎(chǔ)之控制結(jié)構(gòu)

    摘要:基礎(chǔ)之控制結(jié)構(gòu)學(xué)習(xí)目標(biāo)代碼塊與縮進(jìn)條件語(yǔ)句語(yǔ)句語(yǔ)句的嵌套斷言循環(huán)循環(huán)循環(huán)中斷循環(huán)控制語(yǔ)句綜合嵌套列表解析式基礎(chǔ)相關(guān)鏈接學(xué)習(xí)目標(biāo)是簡(jiǎn)潔易學(xué)面向?qū)ο蟮木幊陶Z(yǔ)言。 Py...

    liaosilzu2007 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<