手把手教你在python中如何使用whileTrue語句

在學(xué)習(xí)過程中,經(jīng)常能遇到采用while True的用法。下面以一個(gè)例子進(jìn)行說明:

蛟河網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)建站2013年至今到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。

建立一個(gè)用戶登錄系統(tǒng),用戶輸入用戶名和密碼,如果正確就可以進(jìn)入系統(tǒng)。

1、我自己最開始的寫法:

d = {}        #數(shù)據(jù)庫字典,所有用戶的用戶名密碼存儲(chǔ)在此

name = input("請輸入您的用戶名:")
if name in d:
	password = input("請輸入您的密碼")
	if d[name] == password:
		print('進(jìn)入系統(tǒng)')
	else:
		print('您輸入的密碼錯(cuò)誤,請重新輸入')
else:
	print('您輸入的用戶名不正確,請重新輸入')

這個(gè)自己寫的程序邏輯上貌似是對的:

——先讓用戶輸入用戶名,如果存在該用戶名,就繼續(xù)讓用戶輸入密碼,如果密碼正確就進(jìn)入系統(tǒng)。如果密碼不正確就重新輸入。

——如果不存在該用戶名,提示“您輸入的用戶名不正確,請重新輸入”

但是在實(shí)際運(yùn)行過程中,如果用戶輸入的用戶名和密碼都正確,那自然是沒有問題的。但是如果有一個(gè)輸入不正確,那系統(tǒng)只會(huì)顯示“您輸入的用戶名不正確,請重新輸入”或“您輸入的密碼錯(cuò)誤,請重新輸入”。

也就是說,如果出現(xiàn)錯(cuò)誤,沒有返回到原來的地方,請求繼續(xù)輸入。

2、采用while True循環(huán)語句:

采用該語句的核心思想是如果出現(xiàn)錯(cuò)誤的話,可以繼續(xù)循環(huán)。

d = {}

while True:
	name = input('請輸入您的用戶名:')
	if name in d:
		break
	else:
		print('您輸入的用戶名不存在,請重新輸入')
		continue

while True:
	password = input('請輸入您的密碼:')
	if d[name] == password:
		print('進(jìn)入系統(tǒng)')
		break
	else:
		print('您輸入的密碼不正確,請重新輸入')
		continue

以上程序就可以達(dá)到所需目的:在輸入用戶名或密碼錯(cuò)誤的情況下返回到開始部分,請求繼續(xù)輸入。

while True 語句中一定要有結(jié)束該循環(huán)的break語句,否則會(huì)一直循環(huán)下去的。

當(dāng)然,我們遇見過如果密碼錯(cuò)誤的話,提示您還有幾次輸入密碼的機(jī)會(huì)??梢赃@樣實(shí)現(xiàn):

count = 5
while count:
	password = input('請輸入您的密碼:')
	if d[name] == password:
		print('進(jìn)入系統(tǒng)')
		break
	else:
		count -= 1
		print('您輸入的密碼不正確,還有{}次輸入機(jī)會(huì)'.format(count))
		continue

感謝大家的閱讀,希望大家收益多多。

本文轉(zhuǎn)自:https://blog.csdn.net/geerniya/article/details/77524173

推薦教程:《python教程》

當(dāng)前標(biāo)題:手把手教你在python中如何使用whileTrue語句
文章URL:http://muchs.cn/article26/chcicg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、服務(wù)器托管、用戶體驗(yàn)、App設(shè)計(jì)虛擬主機(jī)、網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營