登入模組:
我們無論上那個網站,經常遇到這樣的情況,讓我們登入這個網站,流程圖如下:
想法:
# 1.當我們登入網站的時候,我們會先輸入使用者名,這個時候,有些網站會提醒我們用戶名是否存在,如果我們輸入的用戶名不存在的話,會出現提示,告訴我們用戶名不存在,這個時候,我們就需要重新輸入,或者選擇註冊,當然,我們這裡只是讓用戶重新輸入;
2.用戶名存在的話,就需要輸入密碼,我們知道,輸入密碼的時候,我們是不驗證密碼是否正確的,如果直接先驗證密碼是否正確,也就失去了讓使用者輸入驗證碼的作用,因此我們總是先不驗證密碼,而是讓使用者輸入驗證碼,先驗證使用者輸入的驗證碼是否正確;
3.如果驗證碼不正確,則讓使用者重新輸入驗證碼;如果驗證碼正確,那麼這個時候就要返回來重新驗證密碼是否正確;如果密碼正確,就登入成功了;否則,如果密碼不正確,這個時候,就需要用戶重新輸入密碼,由於這個時候,用戶已經輸入了用戶名,因此不需要再重新輸入用戶名了,只需要輸入密碼和驗證碼即可;即重新輸入密碼,然後輸入驗證碼;如果密碼正確,則登入成功,否則重新輸入密碼和驗證碼,驗證碼是每次輸入密碼必須輸入的;
要實現上述程式碼的功能,肯定要使用while循環,由於是逐層檢驗,因此用戶名的輸入肯定是一個循環,直到用戶輸入正確的驗證碼為止,關鍵是,如何實現用戶名正確,當密碼或驗證碼輸入錯誤的時候,不需要重新輸入用戶名,不然會讓人鄙視的;這個時候就要考慮,當用戶名正確的時候,就要停止這個循環了,不能再執行下一次用戶輸入密碼或驗證碼的時候循環輸入使用者名稱。
程式碼的實作如下:
def login(name,password):'''用户登录模块,用户登录时候的各种设置,本次实现功能''''''用户登录验证的时候,一般会先判断验证码是否正确,因此要让用户首先验证验证码'''active = Truewhile True:while active: username = input("请输入你的用户名:")'''首先验证用户名是否存在'''users = []for user_list in userfile.usernames: users.append(user_list[0])if username in users: active = Falseelse: print("对不起,您输入的用户名不存在,请重新输入:") pwd = input("请输入你的密码:")while True:'''加入一个用户输入验证码的模块,让用户输入验证码'''verification_code = str(random.randint(0,9)) + chr(random.randint(65,90)) + str(random.randint(0,9)) + chr(random.randint(97,122)) print(verification_code) test_num = input("请输入验证码:")if test_num == verification_code.lower() or test_num == verification_code.upper():'''无论用户输入大小写都可以验证成功''''''用户验证成功后,开始进行用户自己的认证,是否注册,或者用户名正确'''breakelse: print("您输入的验证码有误,请重新输入!")if [username,int(pwd)] in userfile.usernames: print("Successful!")return (username,pwd)else: print("对不起,您输入的密码有误,请重新输入:")
# 上述程式碼運行如下:
请输入你的用户名:geng 请输入你的密码:1233D0t 请输入验证码:3d0t 对不起,您输入的密码有误,请重新输入: 请输入你的密码:2228I9z 请输入验证码:8888您输入的验证码有误,请重新输入! 2G0j 请输入验证码:8888您输入的验证码有误,请重新输入! 7T1a 请输入验证码:7t1a 对不起,您输入的密码有误,请重新输入: 请输入你的密码:22227X4q 请输入验证码:7x4q 对不起,您输入的密码有误,请重新输入: 请输入你的密码:6662O0q 请输入验证码:2o0q Successful!('geng', '666')
上述程式碼的執行結果如上所示,當我們想單獨停止一個循環的時候,可以給這段循環設定一個標識符,用來開啟或關閉循環,當滿足條件的時候,關閉這個循環,讓這個循環在執行其他程式的時候不會開啟;
active = True
while True:
while active :
username = input("請輸入你的使用者名稱:")
##:") ##:") #'''
users = [] # users.append(user_list[
0]) if username
in users: active =
False else:#1# else:
else: # 〠您輸入的使用者名稱不存在,請重新輸入:")
pwd = input(
"請輸入你的密碼:")
#請輸入你的密碼:")
######## 上述程式碼,我們就實現了這樣的功能,當我們想要停止這個循環的時候,我們就讓內層循環的標識符關閉。 ######
以上是python中登入模組的詳細介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

Python和C 各有優勢,選擇應基於項目需求。 1)Python適合快速開發和數據處理,因其簡潔語法和動態類型。 2)C 適用於高性能和系統編程,因其靜態類型和手動內存管理。

選擇Python還是C 取決於項目需求:1)如果需要快速開發、數據處理和原型設計,選擇Python;2)如果需要高性能、低延遲和接近硬件的控制,選擇C 。

通過每天投入2小時的Python學習,可以有效提升編程技能。 1.學習新知識:閱讀文檔或觀看教程。 2.實踐:編寫代碼和完成練習。 3.複習:鞏固所學內容。 4.項目實踐:應用所學於實際項目中。這樣的結構化學習計劃能幫助你係統掌握Python並實現職業目標。

在兩小時內高效學習Python的方法包括:1.回顧基礎知識,確保熟悉Python的安裝和基本語法;2.理解Python的核心概念,如變量、列表、函數等;3.通過使用示例掌握基本和高級用法;4.學習常見錯誤與調試技巧;5.應用性能優化與最佳實踐,如使用列表推導式和遵循PEP8風格指南。

Python適合初學者和數據科學,C 適用於系統編程和遊戲開發。 1.Python簡潔易用,適用於數據科學和Web開發。 2.C 提供高性能和控制力,適用於遊戲開發和系統編程。選擇應基於項目需求和個人興趣。

Python更適合數據科學和快速開發,C 更適合高性能和系統編程。 1.Python語法簡潔,易於學習,適用於數據處理和科學計算。 2.C 語法複雜,但性能優越,常用於遊戲開發和系統編程。

每天投入兩小時學習Python是可行的。 1.學習新知識:用一小時學習新概念,如列表和字典。 2.實踐和練習:用一小時進行編程練習,如編寫小程序。通過合理規劃和堅持不懈,你可以在短時間內掌握Python的核心概念。

Python更易學且易用,C 則更強大但複雜。 1.Python語法簡潔,適合初學者,動態類型和自動內存管理使其易用,但可能導致運行時錯誤。 2.C 提供低級控制和高級特性,適合高性能應用,但學習門檻高,需手動管理內存和類型安全。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Dreamweaver Mac版
視覺化網頁開發工具

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中