成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Python 初體驗(yàn)

roundstones / 1077人閱讀

摘要:廣告歡迎大家到路飛學(xué)城學(xué)習(xí)很喜歡薪時(shí)代這個(gè)詞所以我們要擁抱人工智能擁抱前提下載,如果是電腦會(huì)自帶。

廣告:歡迎大家到 路飛學(xué)城 學(xué)習(xí) Python~

很喜歡 Python “薪”時(shí)代 這個(gè)詞~
所以我們要擁抱 “人工智能”
擁抱 “Python~”

前提:下載 Python,如果是 Mac 電腦會(huì)自帶 Python。

Hello World!

Mac 電腦打開終端輸入:

cd desktop
touch hello.py
vim hello.py
使用 "i" 輸入
print("Hello World")
輸入 :wq 退出
python3 hello.py

然后我們會(huì)在終端看到:Hello World!
恭喜你,這就是使用 Python 寫的第一行代碼!

用戶登錄

當(dāng)我們完成 Hello World 之后,會(huì)發(fā)現(xiàn)這太簡(jiǎn)單了,那么我們肯定要繼續(xù)學(xué)習(xí),例如:語(yǔ)法、數(shù)據(jù)類型、字符編碼、循環(huán)、函數(shù)等等。。
下面先看一下用戶登錄程序需求:

基礎(chǔ)需求:
讓用戶輸入用戶名密碼
認(rèn)證成功后顯示歡迎信息
輸錯(cuò)三次后退出程序

升級(jí)需求:
可以支持多個(gè)用戶登錄 (提示,通過列表存多個(gè)賬戶信息)
用戶3次認(rèn)證失敗后,退出程序,再次啟動(dòng)程序嘗試登錄時(shí),還是鎖定狀態(tài)(提示:需把用戶鎖定的狀態(tài)存到文件里)

分析:
1.既然是登錄,肯定分登錄成功和登錄失敗,即“判斷”,所以我想到了 if else;
2.輸錯(cuò)3次后退出,可以考慮 for 循環(huán);
3.賬戶信息的列表或者文件中肯定有很多用戶信息,所以要遍歷出來分別和用戶輸入的 username 對(duì)比,還有鎖定賬戶名單中的信息也要遍歷出來對(duì)比,這里少不了使用 for 循環(huán);
4.鎖定的用戶存到文件里,需要讀取文件,文件寫入等;
5.說到文件,我們還需要一個(gè)本地的文件 lock_userinfo.txt 來存儲(chǔ)鎖定用戶信息;

邏輯
輸入用戶名,檢查是否被鎖定?

如果鎖定,提示:已鎖定
如果未鎖定,輸入密碼
    讀取用戶信息文件,判斷用戶名是否存在?
        如果不存在,提示:請(qǐng)注冊(cè)
        如果存在,判斷密碼是否正確?
            如果正確,提示:success
            如果不正確,提示:wrong
                密碼不正確的話繼續(xù)輸入密碼,判斷是否正確?
                    正確的話,提示:success
                    不正確的話,記錄次數(shù)
                    當(dāng)次數(shù)到3次時(shí),提示用戶:lock
                    并且把用戶名存入 lock_userinfo.txt 文件

代碼

# 輸入用戶名
username = input("username: ")

# 判斷用戶名是否被鎖定
lock_users = open("lock_userinfo.txt", "r")
for item in lock_users:
    lock_user = item.strip()
    if username == lock_user:
        print("You have been locked!")
        break
lock_users.close()

# 如果沒有被鎖定
if username != lock_user:
    password = input("password: ")
    with open("userinfo.txt") as users:
        for account in users:
            acc_user = account.strip().split(":")[0]
            acc_pwd = account.strip().split(":")[1]
            if username == acc_user:
                if password == acc_pwd:
                    print("Welcome back,", username, "~")
                    break
                else:
                    print("Wrong password!")
                    for i in range(0, 2):
                        i = i + 1
                        password = input("password: ")
                        if password == acc_pwd:
                            print("Welcome back,", username, "~")
                            break
                        else:
                            print("Wrong password!")
                    if i == 2:
                        print("Sorry, you do not have a chance!")
                        lock_write = open("lock_userinfo.txt", "a+")
                        lock_write.write("
")
                        lock_write.write(username)
                        lock_write.close()
        if username != acc_user:
            print("Plase sign up!")

print("------ end ------")

文件目錄
根目錄下有3個(gè)文件:
login.py => python 代碼
userinfo.txt => 存放用戶信息
lock_userinfo.txt => 存放鎖定的用戶信息

userinfo.txt

admin:123
Bob:123
Helen:123

lock_userinfo.txt

Bob

最后送上一句話:紙上得來終覺淺,絕知此事要躬行~

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/41523.html

相關(guān)文章

  • Python: C擴(kuò)展體驗(yàn)

    摘要:哪怕工作中比較少機(jī)會(huì)自己寫擴(kuò)展了解這塊的知識(shí),也有利于我們更加深入了解的運(yùn)行本質(zhì)。表示這個(gè)模塊使用這個(gè)映射表。所以,在我們編寫擴(kuò)展時(shí),也需要時(shí)刻謹(jǐn)記這步主要會(huì)用到下面兩個(gè)宏增加引用例減少引用例不能直接使用釋放,必須使用然后即可。 前言 使用 Python 毋庸置疑減少了很多規(guī)則約束和開發(fā)成本,讓我們能夠更加專注于邏輯而非語(yǔ)法。但是得此失彼,開發(fā)效率提高了,卻帶來了運(yùn)行性能的問題,所以就...

    xcold 評(píng)論0 收藏0
  • Django 項(xiàng)目配置體驗(yàn)(一)

    摘要:靜態(tài)資源路徑可以有多個(gè),所以這里使用一個(gè)列表進(jìn)行配置再次進(jìn)入,完美后記現(xiàn)在只涉及到了項(xiàng)目的配置和一些基礎(chǔ)的配置,沒有涉及到請(qǐng)求從開始到完成的任何內(nèi)容。下篇教程將集中進(jìn)行記錄。 前言 推薦使用 virtualenv 創(chuàng)建 python 虛擬環(huán)境,防止因?yàn)槭褂?pip 安裝依賴到全局引起版本沖突的問題,PyCharm 默認(rèn)會(huì)生成一個(gè) venv 目錄并創(chuàng)建虛擬環(huán)境,使用 IDE 自帶的終端...

    Wildcard 評(píng)論0 收藏0
  • Movidius神經(jīng)計(jì)算棒體驗(yàn)

    摘要:神經(jīng)計(jì)算棒是個(gè)使用接口的深度學(xué)習(xí)設(shè)備,比盤略大,功耗,浮點(diǎn)性能可達(dá)。這里用了我自己改的才能用模型調(diào)優(yōu)命令可以查看模型中每一層使用的內(nèi)存帶寬算力,模型調(diào)優(yōu)可以以此為參考。 showImg(https://segmentfault.com/img/bV5vGV?w=1920&h=1080); Intel? Movidius? 神經(jīng)計(jì)算棒(NCS)是個(gè)使用USB接口的深度學(xué)習(xí)設(shè)備,比U盤略大...

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

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

0條評(píng)論

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