日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Python 用戶輸入和while循環的操作

瀏覽:27日期:2022-06-18 16:26:42
函數input()的工作原理

函數input()讓程序暫停運行,等待用戶輸入一些文本。獲取用戶輸入后,Python將其存儲在一個變量中,以方便使用。

prompt='if you tell us who you are , we can personlize the message you see.'prompt+='nWhat is your first name?'name=input(prompt)print('nHello, '+name+'!')if you tell us who you are , we can personlize the message you see.What is your first name?EricHello, Eric!

這個示例演示了一種創建多行字符串的方式。第1行將消息的前半部分存儲在變量prompt中;在第2行中,運算符+=在存儲在prompt中的字符串末尾附加一個字符串。

While循環簡介

for循環用于針對集合中的每一個元素都一個代碼塊,而while循環不斷的運行,直到指定的條件不滿足為止。

使用while循環

current_number=1while current_number<=5: print(current_number) current_number+=112345

在第一行,我們將current_number設置為1,從而指定從1開始數。接下來的while循環被設置成這樣:只要current_number小雨或等于5,就接著運行這個循環。循環中代碼打印current_number的值,在使用current_number+=1(current_number=current_number+1)將其值加1。

只要滿足條件current_number<=5,python就接著運行這個程序。

讓用戶選擇何時退出

可用while循環讓程序在用戶愿意時不斷地運行。

prompt='nTell me something,and I will repeat it back to you:'prompt+='nEnter ’quit’ to end the program.'message=''while message !=’quit’: message=input(prompt) if message !=’quit’:print(message)Tell me something,and I will repeat it back to you:Enter ’quit’ to end the program.hihiTell me something,and I will repeat it back to you:Enter ’quit’ to end the program.quit

我們定義了一條提示消息,告訴用戶他有兩個選擇:要么輸入一條消息,要么輸入退出值。接下來,我們創建了一個變量——message,用于存儲用戶輸入的值。我們將變量message的初始值設置為空字符串“”,讓Python首次執行while代碼行時有可供檢查的東西。Python首次執行while語句時,需要將message的值與quit進行比較,但此時用戶還沒有輸入。如果沒有可供比較的東西,Python將無法運行程序。為解決這個問題,我們必須給變量message指定一個初始值。雖然這個初始值只是一個空字符串,但符合要求,讓Python能夠執行循環while所需的東西。只要循環不是‘quit’,這個循環就會不斷運行。

使用標志

在前一個示例中,我們讓程序在滿足指定條件時就執行特定的任務。但在更復雜的程序中,很多不同的事件都會導致程序停止運行;在這種情況下,該怎么辦呢?

在要求很多條件都滿足才繼續運行的程序中,可定義一個變量,用于判斷整個程序是否處于活動狀態。這個變量被稱為標志,充當了程序的交通信號燈。你可讓程序在標志為true時繼續運行,并在任何事件導致標志的值為False時讓程序停止運行。這樣,在while語句中,就只需檢查一個條件——標志的當前值是否為true,并將所有測試都放在其它地方,從而讓程序變得更簡潔。

prompt='nTell me something,and I will repeat it back to you:'prompt+='nEnter ’quit’ to end the program.'active=Truewhile active: message=input(prompt) if message==’quit’:active=False else:print(message)Tell me something,and I will repeat it back to you:Enter ’quit’ to end the program.yesyesTell me something,and I will repeat it back to you:Enter ’quit’ to end the program.quit

我們將變量設置為true,讓程序處于活躍狀態。這樣簡化了while語句,因為不需要在其中做任何比較——相關的邏輯由程序的其他部分處理。只要變量active為true,循環就繼續這樣運行。

在while循環中,我們在用戶輸入后使用一條if語句來檢查變量message的值。如果用戶輸入的是‘quit’,我們就將變量active設置為False,這將導致while循環不再繼續下去。如果用戶輸入的不是‘quit’,我們就輸入作為一條消息打印出來。

使用break退出循環

要立即退出循環,不再運行循環中余下的代碼,也不管測試條件如何,可是用break語句。

prompt='nTell me something,and I will repeat it back to you:'prompt+='nEnter ’quit’ to end the program.'while True: message=input(prompt) if message==’quit’:break else:print(message)在循環中使用continue

要返回到循環開頭,并根據測試條件測試結果決定是否繼續執行循環,可使用continue語句,它不像break語句那樣不在執行余下的代碼并退出整個循環。

current_number=0while current_number<10: current_number+=1 if current_number %2==0:continue print(current_number)13579

我們首先將current_number設置成了0,由于它小于10,Python進入while循環。進入循環后,以步長為1的方式往上數,因此current_number為1。接下來,if語句檢查current_number與2的求模運算結果。結果為0,就執行continue語句,讓Python忽略余下的代碼,并返回循環的開頭。如果當前的數字不能被2整除,就執行循環中余下的代碼,Python將這個數字打印出來。

在列表之間移動元素

假設有一個列表,其中包含新注冊但還未驗證的網站用戶;驗證這些用戶后,如何將他們移動到另一個已驗證的用戶列表中呢?一種辦法是使用一個while循環,在驗證用戶的同時將其從未驗證用戶列表中提取出來,再將其加入到另一個已驗證用戶列表中。代碼可能類似于下面這樣:

# 首先,創建一個待驗證用戶列表#和一個用于存儲已驗證用戶的空列表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('nThe following users have been confirmed:')for confirmed_user in confirmed_users: print(confirmed_user.title())Verifying user: CandaceVerifying user: BrianVerifying user: AliceThe following users have been confirmed:CandaceBrianAlice

我們首先創建了一個未驗證用戶列表,其中包含Alice、Brain、和Candace,還創建了一個空列表,用于存儲以驗證的用戶。While循環不斷的運行,直到列表unconfirmed_users變成空的。在這個循環中,函數pop()以每次一個的方式從列表unconfirmed_user末尾刪除未驗證的用戶。由于Candace位于列表unconfirmed_users末尾,因此名字將首先被刪除、存儲到變量current_user中并加入到列表confirmed_users中。

為模擬用戶驗證過程,我們打印一條驗證消息并將用戶加入到已驗證用戶列表中。未驗證用戶列表越來越短,已驗證用戶列表越來越長。未驗證列表為空后結束循環,再打印已驗證列表。

刪除包含特定值的所有列表元素

前面我們使用remove()來刪除列表中的特定元素,這之所以可行,是因為要刪除的值在列表中只出現了一次。如果要刪除列表中所有包含特定值的元素,該怎么辦呢?

假設你有一個寵物列表,其中包含多個值為‘cat’的元素。要刪除所有這些元素,可不斷運行一個while循環,直到列表中不再包含值‘cat’.

pets=[’dog’,’cat’,’dog’,’goldfish’,’cat’,’rabbit’,’cat’]print(pets)while ’cat’ in pets: pets.remove(’cat’)print(pets)[’dog’, ’cat’, ’dog’, ’goldfish’, ’cat’, ’rabbit’, ’cat’][’dog’, ’dog’, ’goldfish’, ’rabbit’]使用用戶輸入來填充字典

可使用while循環提示用戶輸入任意數量的信息。

responses={}#設置一個標志,指出調查是否繼續polling_active=Truewhile polling_active: #提示輸入被調查者的名字和回答 name=input('nWhat is your name?') response=input('which mountain would you like to climb someday?') #將答案存儲在字典中 responses[name]=response #看看是否還有人要參與調查 repeat=input('Would you like to let another person respond?(yes/no)') if repeat==’no’:polling_active=False #調查結束,顯示結果print('n---Poll Results---')for name,response in responses.items(): print(name+' would like to climb '+response+'.')What is your name?hiwhich mountain would you like to climb someday?koWould you like to let another person respond?(yes/no)yesWhat is your name?jiwhich mountain would you like to climb someday?kpWould you like to let another person respond?(yes/no)no---Poll Results---hi would like to climb ko.ji would like to climb kp.

這個程序首先定義了一個空字典,并設置了一個標志,用于指出調查是否繼續。只要polling_active為True,Python就運行while循環中的代碼。

在這個循環中,提示用戶輸入其用戶名及其爬那座山。將這些信息存儲在字典response中,然后詢問用戶調查是否繼續。如果用戶輸入yes,程序將再次進入while循環;如果用戶輸入no,標志polling_active將被設置為False,而while循環就此結束。

補充:python學習筆記——循環退出的幾種方式

在這里主要討論的是while循環,for循環通過迭代對象退出。

由于while循環通常不知道循環的次數,所以對于while循環,它的幾種應用場景導致退出條件設置的不同。

一、讓用戶選擇何時退出:定義退出變量

可使用while循環讓程序在用戶在愿意的時不斷運行,在其中定義一個退出值,只要用戶輸入的不是這個,程序就接著運行。

我們小時候玩游戲的經常會遇到,當人物死亡的時候,界面會跳出 重新開始游戲or結束游戲,結束游戲就相當于我們設置的退出值。

形式如下:

active = True while active: message = input() if message =='quit':active = False else:print(message)

1、active是我們開始就定義的一個while觸發器

2、message定義用戶輸入字符

3、quit是退出條件,若用戶輸入quit,則active轉換屬性,下次循環退出。

二、用break退出:當明確遇到某些條件即退出時使用

當程序執行到break,不管后面直接退出循環(而不是if-else模塊)。

break主要用于控制if-else語句,可使用ta來控制哪些代碼將執行,哪些代碼不執行。

prompt = '請輸入你曾去過的城市名字(當你不想玩的時候輸入’quit’退出程序)'while True: if city == ’quit’:break else:print('i’d love to go to'+’city.title()’)三、在循環中使用continue:當循環中需要跳過一些值時使用

當程序執行到continue,直接跳出本次循環,進入下一次循環。

例:從1到10,如果是奇數則輸出,偶數則跳過

chuzhi = 0while chuzhi !=10: chuzhi += 1 if chuzhi%2 ==0:continue else:print(chuzhi)

在遇到continue的時候后面的else不看直接進入下一次while。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美日韩国产高清电影| 国产精品字幕| 欧美日韩中出| 激情综合网站| 精品久久不卡| 亚洲欧洲国产精品一区| 日韩电影免费在线观看| 香蕉久久夜色精品国产| 日本91福利区| 久久久亚洲欧洲日产| 日产精品一区| 欧美91视频| 久久免费国产| 亚洲三区欧美一区国产二区| 亚洲美女久久精品| 亚洲成人一区| 精品一区不卡| 欧美久久一区二区三区| 91精品一区| 亚洲综合专区| 精品国产乱码久久久久久樱花| 一区二区自拍| 欧美黑人做爰爽爽爽| 欧美美女一区| 高清日韩欧美| 国产精品成人3p一区二区三区| 亚洲精品成人一区| 国产麻豆一区二区三区| 日韩av免费大片| 久久中文字幕二区| 免费黄色成人| 精品国产第一福利网站| 国产极品模特精品一二| 国产一区久久| 久久久久久色| 色爱综合av| 国产成人精品福利| 四虎精品一区二区免费| 国产精一区二区| 亚洲综合日本| 欧美好骚综合网| 久久字幕精品一区| 亚洲精品福利| 久久成人亚洲| 日韩高清电影一区| 视频一区国产视频| 精品视频一二| 国产精品亚洲成在人线| 亚洲欧美日韩一区在线观看| 国产探花一区在线观看| 久久青草久久| 91精品一区国产高清在线gif| 视频小说一区二区| 欧美精品一区二区久久| 蜜桃视频第一区免费观看| 国产一区日韩一区| 日本少妇一区| 日韩在线成人| 亚洲精品伊人| 中文字幕一区二区精品区| 精品少妇av| 国产精品1luya在线播放| 狠狠操综合网| 日本精品黄色| 国产精品a级| 久久三级福利| 久久国产中文字幕| 亚洲天堂av影院| 欧洲毛片在线视频免费观看| 国产一区二区精品| 蜜臀av免费一区二区三区| 中文字幕在线高清| 伊人久久国产| 国产高清视频一区二区| 午夜久久tv| 黄色精品视频| 欧美日韩伊人| 亚洲一区av| 日韩精品一区二区三区免费观看| 国产日韩高清一区二区三区在线| 麻豆精品99| 久久精品人人| 国产一区二区高清| 久久99免费视频| 久久精品青草| 成人污污视频| 精品视频在线观看网站| 国产欧美自拍一区| 日韩精品免费视频一区二区三区 | 欧美日韩va| 91精品xxx在线观看| 日韩va欧美va亚洲va久久| 国产黄色精品| 日韩一级网站| 欧美国产视频| 麻豆视频在线观看免费网站黄| 国产精品国产一区| 日本久久二区| 国产精品15p| 老鸭窝毛片一区二区三区| 中文在线а√在线8| 日韩三级一区| 激情欧美一区| 日韩三区免费| 麻豆精品在线观看| 久久国产福利| 亚洲深夜av| 欧美日韩国产免费观看视频| 国产精品久久久久久久久免费高清| 国产精品大片| 久久国产乱子精品免费女| 麻豆极品一区二区三区| 日韩成人一级| 综合国产视频| 欧美成人精品三级网站| 91av亚洲| 日本高清久久| 女同性一区二区三区人了人一| 日韩一区自拍| 精品视频在线观看网站| 丝袜美腿成人在线| 精品精品99| 婷婷综合国产| 男人操女人的视频在线观看欧美| 欧美日韩国产在线观看网站| 日本aⅴ亚洲精品中文乱码| 成人av二区| 男女男精品视频网| 青草综合视频| 日韩激情精品| 国产午夜久久av| 免费视频亚洲| 日韩福利视频导航| 国产精品亚洲欧美一级在线| 国产日韩一区| 久久亚洲国产精品尤物| 日韩免费久久| 88xx成人免费观看视频库| 91欧美日韩| 美女国产精品久久久| 婷婷丁香综合| 国产精品久久久网站| 国产精品美女久久久浪潮软件| 亚洲a一区二区三区| 亚州av乱码久久精品蜜桃| 日韩av有码| 午夜影院一区| 岛国av在线播放| 成人在线视频区| 美女免费视频一区| 三级在线观看一区二区 | 麻豆免费精品视频| 98精品视频| 欧美日韩视频免费观看| 国产日韩一区| 国产欧美69| 伊人久久大香线蕉av不卡| 欧美日韩视频一区二区三区| 色婷婷精品视频| 久久国产高清| 成人免费电影网址| 爽好久久久欧美精品| 亚洲自拍另类| 国产精品久久久久久久久久10秀| 精品国产欧美| 日韩成人精品一区二区| 国产精品专区免费| 成人精品高清在线视频| 欧美在线黄色| 不卡av一区二区| 日韩视频久久| 久久午夜精品一区二区| 日韩欧美1区| 国产日韩亚洲| 午夜亚洲精品| 韩国女主播一区二区三区| 狠狠久久伊人| 国产精品最新自拍| 日韩三级一区| 日韩精品中文字幕吗一区二区 | 伊人久久大香线蕉av超碰演员| 久久精品一区二区不卡| 久久午夜精品| 麻豆精品99| 成人精品中文字幕| 日韩一二三区在线观看| 福利精品一区| 久久gogo国模啪啪裸体| 日韩精品免费一区二区三区| 深夜福利一区| 日韩精品首页| 欧美激情日韩| 一二三区精品| 偷拍精品精品一区二区三区| 亚洲欧洲美洲国产香蕉| 久久久免费人体| 亚洲精品乱码| 欧美日韩在线二区| 免费在线欧美黄色| 日韩av二区在线播放|