python 字符串
str.isnumeric() | 检测字符串是否只由数字组成 |
---|---|
str.isalpha() | 检测字符串是否只由字母组成 |
str.islower() | 检测字符串中的字母是否都为小写 |
str.isupper | 检测字符串中所有的字母是否都为大写 |
更多isxxx()方法请参考:
https://docs.python.org/3/library/stdtypes.html#string-methods
循环的终止
- break 语句
终止整个循环
例如:0除以2的余数为0,break 语句,终止整个循环,因此无输出
- continue 语句
只终止本次循环,而不终止整个循环的执行
例如:0除以2的余数为0,本次循环终止,但不终止整个循环的执行;
1除以2的余数不为0,循环不终止,继续运行,执行print()语句;
······
文件的基础 - 文件:存储在外部介质(如:硬盘)上的数据或信息的集合
- 文本文件:一般只有字符编码储存的文件,能够被最简单的文本编辑器直接读取
- 编码:信息从一种形式转换为另一种形式的过程
- 常用的编码:ASCLL,Unicode,UTF-8…
- 多行文本,用\n 表示换行
文件的操作
- 步骤:打开文件 —>操作文件(读、写等)—> 关闭文件
- 1.打开文件:建立文件与程序的关联
open (filename, mode)
filename : 文件名(包括路径名);
mmode : 打开模式
打开模式 | 含义 |
---|---|
r | 只读,文件不存在则报错 |
w | 只写,文件不存在则自动创建 |
a | 在文件末尾附加 |
r+ | 读写 |
-
2.操作文件:写入,读取,等
- 写入操作:将计算机内存向文件写入数据
- write() :将文本数据写入文件中
- writelines() : 将字符串列表写入文件中
-
3.关闭文件:终止程序与文件的关联
- close()
-
4.读取操作:从文件中读取数据到计算机内存中
-
read() :返回值为包含整个文件内容的一个字符串
-
readline() :返回值为文件下一行内容的字符串
-
readlines() :返回值为整个文件内容的列表,么想是以换行符为结尾的一行字符串
-
文件的遍历
f = open ('tmp.txt','r')
for line in f.readlines() :
#处理一行数据
pass
f.close()
f = open ('tmp.txt','r')
for line in f:
#处理一行数据
pass
f.close()
面向过程VS面向对象
-
面向过程(POP):以程序执行过程为设计流程的编程思想(例:流程图)
-
面向对象(OOP)以事务为中心的编程思想
-
什么是对象(Object)?
-
现实世界找那个的对象:属性、行为
-
对象例子:
波斯猫,属性:品种、颜色、大小
行为:叫、捉老鼠 -
类(class):某种类型集合的描述
-
属性:类本身的一种特性
-
方法:类所能实现的行为
-
类的定义:
class ClassName
__init __(self)构造函数 : 初始化对象的各属性
self代表的类的实例
类到对象,是一个实例化的过程
对象到类,是一个抽象的过程
面向对象特点 -
封装
将数据及相关操作打包在一起
支持代码复用 -
继承
子类(subclass)借用父类(superclass)
避免重复操作,提升代码复用程度
定义 class ClassName (SuperClassName) -
多态
在不同情况下用同一个函数名启用不同方法
灵活性
版本:1.0
"""
作者:陈洁
功能:判断密码强度
版本:1.0
日期:08/10/2019
"""
def check_number_exist(password_str):
"""
判断字符中是否含有数字
"""
for c in password_str:
if c.isnumeric():
#当函数在运行中,遇到return语句会提前终止函数,跳出函数
return True
return False
def check_letter_exist(password_str):
"""
判断字符中是否含有字母
"""
for c in password_str:
if c.isalpha():
return True
return False
def main():
"""
主函数
"""
password = input('请输入密码:')
#密码强度
strength_level = 0
#规则一:密码强度大于8
if len(password) >= 8:
strength_level += 1
else:
print('密码强度要求至少8位!')
#规则二:包含数字
if check_number_exist(password):
strength_level += 1
else:
print('密码要求包含数字!')
#规则三:包含字母
if check_letter_exist(password):
strength_level += 1
else:
print('密码要求包含字母!')
if strength_level == 3:
print('恭喜!密码强度合格!')
else:
print('抱歉!密码强度不合格!')
if __name__ =='__main__':
main()
版本2.0
新增功能:限制尝次数,循环的终止
新使用知识点:循环的暂停和终止
"""
作者:陈洁