判断密码强度/判断密码强弱(4)

去社区提问

简介:判断密码强弱4.0版本,读取保存的文件内容。

案例描述

欢迎来到今天的课堂~

上节课我们学习了利用Python写文件的相关操作,把用户输入的密码及密码强度保存在文件中。今天我们接着上节课的思路,继续为你讲解Python读取文件的知识内容。

判断密码强弱4.0版本实现的功能:读取保存在文件中的密码。

废话不多说,现在就进入正题!

案例分析

先来回忆一下上节课讲过操作文件分为几个步骤?

和把大象装进冰箱类似,操作文件分为三个基本步骤:

  1. 打开文件(打开冰箱门)
  2. 对文件进行读写等操作(把大象装进去)
  3. 关闭文件(把冰箱门关上)

用户设置的密码和强度保存在文件password_3.0.txt中,首先打开这个文件。

打开文件使用open(filename,mode)方法,建立程序与文件之间的联系,除了文件名外还要设置文件的打开模式。

本节课的任务是读取文件内容,我们选择r只读模式。

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

读取文件有下面三个常用方法:

  • read() 返回值为包含整个文件内容的一个字符串
  • readline() 返回值为文件下一行内容的字符串
  • redlines() 返回值为整个文件内容的列表,每项是以换行符为结尾的一行字符串

我们一个个来了解他们的用法。

  • read()

read()方法会一次性读取整个文件的内容,把它作为一个字符串,把读取内容打印显示出来查看效果。

别忘记在最后关闭文件哦。

代码练习:

编程区

  1. # 读取文件
  2. f = open('password_3.0.txt', 'r')
  3. # 1.read()
  4. content = f.read()
  5. print(content)
  6. # 关闭文件
  7. f.close()

终端区

这样就成功读取了文件内容,比想象中的还要简单对不对~

  • readline()

readline()每次只读取一行内容:

代码练习:

编程区

  1. # 读取文件
  2. f = open('password_3.0.txt', 'r')
  3. # 2.readline()
  4. line = f.readline()
  5. print(line)
  6. # 关闭文件
  7. f.close()

终端区

调用一次readline()方法就读取文件中的一行内容。因此想要读取全部内容需要三次来实现:

代码练习:

编程区

  1. # 读取文件
  2. f = open('password_3.0.txt', 'r')
  3. # 2.readline()
  4. line = f.readline()
  5. print(line)
  6. line = f.readline()
  7. print(line)
  8. line = f.readline()
  9. print(line)
  10. # 关闭文件
  11. f.close()

终端区

现在你可能会有这样的疑问:案例中的文件只有三行内容当然很容易操作,但如果文件的信息很长,不知道具体行数,怎么按照逐行的方式读取文件呢?

在回答这个问题之前,我要先为你介绍第三种文件读取的方法:readlines()

  • readlines()

readlines()同样可以直接读取文件的全部内容,但它与read()的不同之处在于readlines()将内容读取到列表中,文件每行信息都是列表的一个元素。

代码练习:

编程区

  1. # 读取文件
  2. f = open('password_3.0.txt', 'r')
  3. # 3.readlines()
  4. lines = f.readlines()
  5. print(lines)
  6. # 关闭文件
  7. f.close()

终端区

从打印结果我们可以看到,输出的是一个列表,列表中用逗号分隔了三个元素,分别是文件的三行内容。

上节课我们讲过\n是转义字符,代表换行。

这个形式有没有为你解决上面逐行遍历的问题带来思路灵感?

既然readlines()可以把文件内容按行存储在列表中,那我们遍历列表的每一个元素不就是按行读取文件信息了吗~

  1. # 读取文件
  2. f = open('password_3.0.txt', 'r')
  3. # 3.readlines()
  4. lines = f.readlines()
  5. for line in lines:
  6. print(line)
  7. # 关闭文件
  8. f.close()

利用前面学过的for搞定~把结果打印显示出来。

除此之外我们也可以用下面的方法达到同样的效果,直接对文件遍历:

代码练习:

编程区

  1. # 读取文件
  2. f = open('password_3.0.txt', 'r')
  3. for line in f:
  4. print(line)
  5. # 关闭文件
  6. f.close()

终端区

本关总结

到这里,我们就掌握了文件读写的基本操作,后续你也可以利用这些方法freestyle完成你自己的内容啦。

一起来总结本节课的知识点:

  • 文件的写操作
  • 文件的遍历
下节预告

这些方法都是与‘密码操作’相关的,能够将这些方法封装成一个整体?下节课我们将学习Python中非常重要的面向对象相关知识。我们不见不散哦~

想要领取课程相关资料,和更多同学一起交流学习,欢迎添加班主任老师微信。

扫描二维码添加班主任微信

判断密码强度 1/3

判断密码强弱(4)

1.0x

恭喜完成本课时的学习!
坚持学习

行动力超过

累计学习

学习下一课时