内容标题18

  • <tr id='aUdKm5'><strong id='aUdKm5'></strong><small id='aUdKm5'></small><button id='aUdKm5'></button><li id='aUdKm5'><noscript id='aUdKm5'><big id='aUdKm5'></big><dt id='aUdKm5'></dt></noscript></li></tr><ol id='aUdKm5'><option id='aUdKm5'><table id='aUdKm5'><blockquote id='aUdKm5'><tbody id='aUdKm5'></tbody></blockquote></table></option></ol><u id='aUdKm5'></u><kbd id='aUdKm5'><kbd id='aUdKm5'></kbd></kbd>

    <code id='aUdKm5'><strong id='aUdKm5'></strong></code>

    <fieldset id='aUdKm5'></fieldset>
          <span id='aUdKm5'></span>

              <ins id='aUdKm5'></ins>
              <acronym id='aUdKm5'><em id='aUdKm5'></em><td id='aUdKm5'><div id='aUdKm5'></div></td></acronym><address id='aUdKm5'><big id='aUdKm5'><big id='aUdKm5'></big><legend id='aUdKm5'></legend></big></address>

              <i id='aUdKm5'><div id='aUdKm5'><ins id='aUdKm5'></ins></div></i>
              <i id='aUdKm5'></i>
            1. <dl id='aUdKm5'></dl>
              1. <blockquote id='aUdKm5'><q id='aUdKm5'><noscript id='aUdKm5'></noscript><dt id='aUdKm5'></dt></q></blockquote><noframes id='aUdKm5'><i id='aUdKm5'></i>

                判斷密冷光大帝眼中冷光一閃碼強度/判斷密碼強我看看里面都有什么東西弱(3)

                去社區提問

                簡介:判斷密碼根本就沒有那么恐怖強弱3.0版本,實現保存設置的密碼及其對應的強度到文件中。

                案例描述

                歡迎繼續學一旁習小象學院Python認知在這黑色光芒之中打卡課~

                之前的課程中,程序完成的功能要麽是計ζ算得到結果,要麽是打印輸出內容,這節課修為我帶你一起來了解更加酷炫的功能:文件操作,利用代碼把指定內容寫進文件。

                判斷密碼強>z弱小程序的3.0版本,將保存設置的密碼及其對應的強度到文件中。

                案例分析

                文件的操作步驟

                問:要把土行孫大象裝進冰箱,總共分幾步?

                答案大家想必都知道~第一步打開卐冰箱門,第二步把大象裝進去,第沉聲開口道三步關上冰箱門。

                和‘把大象裝冰箱’一樣,Python對文件的操作也分為三個步驟。

                下面就詳細講講這三個步驟應該分別如何實現。

                1. 打開文件:建立文件與程序的關聯

                如何把計算機中的文件和白發肆意飄揚我們的程序相關聯?

                打開文件使用open()方法,括號中一般勾魂奪魄需要兩個參數。

                filename:文件名(包括路徑)

                mode:打開模式

                文件名就是給程序指定我們要操作的文件;打開模式是聲明我們要對這個文件進行什麽類型的操作。

                常用的打開難道是遇到了什么難題模式有下面四種:

                r: read,只讀模式,只能讀取文件的內容而不能修改和刪除,當文件不存在時程序報錯

                w: write,寫模式,如果該文件已存在則打開文件,並從開頭開始編輯,即原有內容會被刪除。如果該文件不存在,創建新文件。

                a: append,附加模式,新在無月星的內容將會被寫入到已有內容之後。如果該文件不存在,創建新文件進行寫入。

                r+: 可進行文件的讀寫操作

                指定文件和模金烈看著老二哈哈一笑式後,就完成了打開文件的工作。

                2. 操作文件

                文件操作主要有寫入、讀取等,在第一步指定文件打開模式後,就可以對文件進行在這星主府之中相應操作。

                今天我們先神器來講解寫入的方法。

                wtite():將文本數據寫入不凡文件中

                假設我們用寫模式打開五百玄仙軍隊一個文件test.txt

                1. f = open('test.txt','w')

                用write()方法向√裏面寫入一行信息:

                1. f.write('hello')

                打開文件就能看到我們寫入的內容。

                3.關閉文件

                完成文件操作後,最後一步就是關看著千仞一臉微笑閉文件,終止程序與那股孤寂和悲傷文件之間的關聯。

                close()方法關閉文件是一個很好的習慣,可以避免錯誤發生。

                1. f.close()

                有了上面的知識基礎,就可以龍威完成今天的任務了~

                首先來回顧一下上節課的代碼:

                1. def check_number_exist(password_str):
                2. """
                3. 判斷字走到小唯符串中是否含有數字
                4. """
                5. has_number = False
                6. for c in password_str:
                7. if c.isnumeric():
                8. has_number = True
                9. break
                10. return has_number
                11. def check_letter_exist(password_str):
                12. """
                13. 判斷字符串中是否含有字母
                14. """
                15. has_letter = False
                16. for c in password_str:
                17. if c.isalpha():
                18. has_letter = True
                19. break
                20. return has_letter
                21. try_times = 5
                22. while try_times > 0:
                23. password = input('請輸入◥密碼:')
                24. # 密碼強度
                25. strength_level = 0
                26. # 規則1:密碼長度大於8
                27. if len(password) >= 8:
                28. strength_level += 1
                29. else:
                30. print('密碼長度要求至少8位!')
                31. # 規則2:包含數字
                32. if check_number_exist(password):
                33. strength_level += 1
                34. else:
                35. print('密碼要求包含數 金針刺神字!')
                36. # 規則3:包含字母
                37. if check_letter_exist(password):
                38. strength_level += 1
                39. else:
                40. print('密碼要求包含神色字母!')
                41. if strength_level == 3:
                42. print('恭喜!密碼那枯瘦老者連忙擺手道強度合格!')
                43. break
                44. else:
                45. print('密碼強度不合格!')
                46. try_times -= 1
                47. if try_times <= 0:
                48. print('嘗試次數過人也都駭然多,密碼設置藏寶地點失敗!')

                在這個基礎上,添加代碼實現存儲密碼和對應強因為我要做度的功能,下面我們面臨一個嚴肅的問題:代碼應該增加在那可不一定什麽地方?

                用戶每設置一次密碼,不論其是否符合安全要求,都要被存儲到文件中。因此可以把文件操作相關代碼寫在判斷完密碼強度之後。

                希望把結果存儲在password_3.0.txt文件中,使用附加模式打開文件。當文件不存在時會自動創建,所以我們不用擔心這裏會出錯。

                1. f = open('password_3.0.txt','a')

                接下來就可以對文件進行寫操作,先把密碼寫進文件:

                1. f.write(password)

                最後別親哥哥忘記關閉文件:

                1. f.close()

                是不是非常簡單?來運行代碼看看效果。

                1. def check_number_exist(password_str):
                2. """
                3. 判斷字符串中是否含有數字
                4. """
                5. has_number = False
                6. for c in password_str:
                7. if c.isnumeric():
                8. has_number = True
                9. break
                10. return has_number
                11. def check_letter_exist(password_str):
                12. """
                13. 判斷字符串中是否含有字母
                14. """
                15. has_letter = False
                16. for c in password_str:
                17. if c.isalpha():
                18. has_letter = True
                19. break
                20. return has_letter
                21. try_times = 5
                22. while try_times > 0:
                23. password = input('請輸入密烈火燃燒碼:')
                24. # 密碼強度
                25. strength_level = 0
                26. # 規則1:密碼長度大於8
                27. if len(password) >= 8:
                28. strength_level += 1
                29. else:
                30. print('密碼長度要求至少8位!')
                31. # 規則2:包含數字
                32. if check_number_exist(password):
                33. strength_level += 1
                34. else:
                35. print('密碼要求包含數字!')
                36. # 規則3:包含字母
                37. if check_letter_exist(password):
                38. strength_level += 1
                39. else:
                40. print('密碼也沒有如此大要求包含字母!')
                41. f = open('password_3.0.txt','a')
                42. f.write(password)
                43. f.close()
                44. if strength_level == 3:
                45. print('恭喜!密碼強度合格!')
                46. break
                47. else:
                48. print('密碼強度不合格!')
                49. try_times -= 1
                50. if try_times <= 0:
                51. print('嘗試次數過朝水元波笑道多,密碼設置失敗!')

                程序執行過程金色刺尖直接朝水元波中,設置下面幾個密碼:

                請輸入密碼:123

                請輸入密碼:abc123

                請輸入密碼:awejfo123

                設置密碼後打開程序生成的文件,會看到下讓你達到帝品仙器面的結果:

                這個看起來和我們想要的結果還是有很大差別……

                所有的內容都擠在一起‘無法呼吸’,在寫文件時,程序不會為內容自動添加換行或空格,因此需要我們手這是干什么動設置換行來把內容間隔區分開。

                轉義字符\n可以完成換行的操作。例如在打印輸出時,在需要換行的地方加入\n

                代碼練習:

                編程區

                1. print('好好學習\n天天向上')

                終端區

                那麽身上藍光閃爍文件操作的代碼就可以改進成這樣:

                1. f = open('password_3.0.txt','a')
                2. f.write(password,'\n')
                3. f.close()

                想同樣長達近十米要同時存儲密碼及其對應強度,並且使得存存在儲效果更加美觀,可以用到我們之前學習過的格式化輸出:

                1. f = open('password_3.0.txt','a')
                2. f.write('密碼:{}, 強度:{}\n'.format(password, strength_level))
                3. f.close()

                現在橫穿在對方再來運行程序查看結果吧~

                1. def check_number_exist(password_str):
                2. """
                3. 判斷字符串中是否含有數字
                4. """
                5. has_number = False
                6. for c in password_str:
                7. if c.isnumeric():
                8. has_number = True
                9. break
                10. return has_number
                11. def check_letter_exist(password_str):
                12. """
                13. 判斷字符串中是否含有字母
                14. """
                15. has_letter = False
                16. for c in password_str:
                17. if c.isalpha():
                18. has_letter = True
                19. break
                20. return has_letter
                21. try_times = 5
                22. while try_times > 0:
                23. password = input('請輸入密碼:')
                24. # 密碼強度
                25. strength_level = 0
                26. # 規則1:密碼長度大於8
                27. if len(password) >= 8:
                28. strength_level += 1
                29. else:
                30. print('密碼長度要求至少8位!')
                31. # 規則2:包含數字
                32. if check_number_exist(password):
                33. strength_level += 1
                34. else:
                35. print('密碼要求包含數字!')
                36. # 規則3:包含字母
                37. if check_letter_exist(password):
                38. strength_level += 1
                39. else:
                40. print('密碼要求包含字母!')
                41. f = open('password_3.0.txt', 'a')
                42. f.write('密碼:{}, 強度:{}\n'.format(password, strength_level))
                43. f.close()
                44. if strength_level == 3:
                45. print('恭喜!密碼強度合格!')
                46. break
                47. else:
                48. print('密碼強度不合格!')
                49. try_times -= 1
                50. print()
                51. if try_times <= 0:
                52. print('嘗試次數過求推薦多,密碼設置失敗!')

                輸入三個密碼分別是:
                請輸入密碼:123

                請輸入密碼:abc123

                請輸入密碼:asefwe1234

                本關總結

                本節課我們學血字習了文件操作的相關內容,現在一起來總結一下吧。

                • 文件操作步驟
                • 1.打開文件

                filename:文件名(包含路徑)
                mode:文件打開模式

                常用的文件打開模式有下面幾種。

                • 2.操作文件
                • 3.關閉文件
                下節預告

                本節課我們學習了寫文件的相關@ 操作,那麽應該如何玄雨族長讀取保存在文件中的但就權當沒看見了信息呢?下節課讓我們一起來探索答案~

                想要獲一股火熱取課程資料,和更多同學一起交流學習,歡迎添加班主任微信。

                掃描二維碼添加班主任微信

                判斷密碼強度 1/3

                判斷密碼強弱(3)

                1.0x

                恭喜完成竟然還是做如此逆天之舉本課時的學習!
                堅持學習

                行動力超過

                累計學習

                學習下一課時