知识点目录
1.条件判断语句的三种常用格式
2.判断一个值是否为True的三种格式
3.and.or.not的特点
4.独立完成练习中的"征婚筛选"功能
5.判断一个变量是否为空的写法
6.三目运算符的特点
7.startswith和endswith()用法
8.除.整除.求余对应的符号是什么
9.range的三种用法
10.for 循环的基本格式
11.什么是可迭代对象
12.break和continue的特点
13.while循环的基本格式
14.while和for循环的特点和应用场景
15.如何生成随机数
16.用随机数做一个猜数字小游戏
1.条件判断语句的三种常用格式
# 条件判断三种格式
# 条件(condition)
# 格式1:
if condition:
pass
# 格式2:
if condition:
pass
else:
pass
# 格式3:
if condition:
pass
elif condition:
pass
else:
pass
2.判断一个值是否为True的三种格式
user =True
格式1:
if user:
pass
格式2
if user==True:
pass
格式3
if user is True:
pass
判断一个字符串是否相等一般用 ==
判断bool类型的一般用 格式1和3
3.and.or.not的特点
and的特点
# True and True ==> True
# False and True ==> False
# False and False ==> False
or的特点
# True or True ==> True
# False or True ==> True
# False or False ==> False
not的特点
# not True ==> False
# not False ==> True
4.独立完成练习中的"征婚筛选"功能
# 综合练习
# 1.女性征婚要求 身高\年龄\薪水需要手动输入
# 1)性别要求男
# 2)年龄 0-20 提示太嫩了
# 20-30 年龄符合
# 30-50 年龄有点大,但是有可能
# 50以上 年龄太大不考虑
# 3)身高 0-170 身高不符
# 170-180 身高合适
# 180以上 太高不考虑
# 4)薪水 0-3000 养不起,不考虑
# 3000-5000 凑合,考虑看看
# 5000-12000 满意
# 12000以上 非常满意(忽略身高、年龄)
name = input("请告诉我你叫啥:")
sex = True
height = input("请告诉我你的身高:")
height = float(height)
age = input("请告诉我你的年龄:")
age = int(age)
salary = input("请告诉我你的薪水:")
salary = float(salary)
print("叫我想想...")
if sex:
if 12000 <= salary:
print("我看重的是你的人不是你的钱")
else:
if 0 <= age < 20:
print("我已经是个老阿姨了")
elif 20 <= age < 50:
if 0 <= height < 170:
print("身高不符")
elif 170 <= height <= 180:
print("身高符合")
if 0 <= salary <= 3000:
print("养不起")
elif 3000 < salary <= 5000:
print("勉强凑合过")
elif 5000 < salary <= 12000:
print("比较满意")
else:
print("太高了")
else:
print("你已经是个老叔叔了")
else:
print("我不是拉拉")
5.判断一个变量是否为空的写法
null_str = ""
if not null_str:
print("空字符串")
null_list = []
if not null_list:
print("空列表")
null_tuple = ()
if not null_tuple:
print("空元组")
null_dict = {}
if not null_dict:
print("空字典")
6.三目运算符的特点
三目(元)运算符
# 优点:语法简洁
# 缺点:不适用于太复杂的逻辑
# 结论
# 1.如果逻辑中只有一句话,可以考虑用三目运算符简化
# 2.逻辑中超过一句话,用三目运算符也行,但会更麻烦
7.startswith和endswith()用法
在Python中有两个函数分别是startswith()函数与endswith()函数,功能都十分相似,startswith()函数判断文本是否以某个字符开始,endswith()函数判断文本是否以某个字符结束。
startswith()函数
此函数判断一个文本是否以某个或几个字符开始,结果以True或者False返回。
代码如下:
text='welcome to qttc blog'
print text.startswith('w') # True
print text.startswith('wel') # True
print text.startswith('c') # False
print text.startswith('') # True
endswith()函数
此函数判断一个文本是否以某个或几个字符结束,结果以True或者False返回。
代码如下:
text='welcome to qttc blog'
print text.endswith('g') # True
print text.endswith('go') # False
print text.endswith('og') # True
print text.endswith('') # True
print text.endswith('g ') # False
判断文件是否为exe执行文件
我们可以利用endswith()函数判断文件名的是不是以.exe后缀结尾判断是否为可执行文件
代码如下:
# coding=utf8
fileName1='qttc.exe'
if(fileName1.endswith('.exe')):
print '这是一个exe执行文件'
else:
print '这不是一个exe执行文件'
# 执行结果:这是一个exe执行文件
判断文件名后缀是否为图片
代码如下:
# coding=utf8
fileName1='pic.jpg'
if fileName1.endswith('.gif') or fileName1.endswith('.jpg') or fileName1.endswith('.png'):
print '这是一张图片'
else:
print '这不是一张图片'
8.除.整除.求余对应的符号是什么
除对应的符号 /
整除对应的符号 //
求余对应的符号 %
9.range的三种用法
# range函数 范围 参数为整型
# range(start,end,step) start默认为0,step默认为1
# range(参数) 从0开始到参数值-1
# range(参数1,参数2) 从参数1的值到参数2的值-1
# range(参数1,参数2,参数3) 从参数1的值到参数2的值-1,步长为参数3的值
# 计算1到100之间能被3整除的数之和
sum = 0
for i in range(1, 101):
if i % 3 == 0:
sum += i
print(sum)
# sum=0
# for i in range(3, 101,3):
# if i % 3 == 0:
# sum += i
# print(sum)
# sum = 0
# total = sum(range(3,101,3))
# print(total)
10.for 循环的基本格式
# for的基本格式
# 可迭代对象:字符串 列表 字典 元组 文件句柄
# for 变量1,变量2... in 可迭代对象:
# 循环内容
for i in 'abcdefg':
print(i)
11.什么是可迭代对象
指存储了元素的一个容器对象,且容器中的元素可以通过__iter__( )方法或__getitem__( )方法访问。
一个可迭代对象是不能独立进行迭代的,Python中,迭代是通过for … in来完成的。凡是可迭代对象都可以直接用for… in…循环访问,这个语句其实做了两件事:第一件事是调用__iter__()获得一个可迭代器,第二件事是循环调用__next__()。
常见的可迭代对象包括:
a) 集合数据类型,如list、tuple、dict、set、str等;
b) 生成器(generator),包括生成器和带yield的生成器函数(generator function),下节专门介绍。
如何判断一个对象是可迭代对象呢?可以通过collections模块的Iterable类型判断,具体判断方法如下:
from collections import Iterable #导入Iterable 模块
isinstance(变量, Iterable) #判断一个变量是否为可迭代对象返回True表明是可迭代对象
12.break和continue的特点
break 跳出整个循环,break之后的代码不执行
continue:跳出本次循环,continue之后的所有代码不执行
13.while循环的基本格式
python中while循环比较简单,只有一种格式
# 格式
# while 循环条件:
# 循环内容
14.while和for循环的特点和应用场景
如果明确的知道循环执行的次数或者是要对一个容器进行迭代(后面会讲到),那么我们推荐使用for-in循环
如果要构造不知道具体循环次数的循环结构,我们推荐使用while循环,while循环通过一个能够产生或转换出bool值的表达式来控制循环,表达式的值为True循环继续,表达式的值为False循环结束。
15.如何生成随机数
from random import randint
# randint(起始值,结束值) 随机整数
system_num = randint(1,100)
print(system_num)
16.用随机数做一个猜数字小游戏
from random import randint
# randint(起始值,结束值) 随机整数
# 模拟登陆
# 输入用户名admin,密码admin
# 如果成功,则提示"欢迎进入猜数字逻辑游戏"
# 如果不成功,则提示"用户名或密码错误!请重新输入"
# 2.猜数字逻辑
# 1)提示"请输入1-100"之间的一个数字
# 2)如果大于系统数字,则提示"猜大了"
# 3)如果小于系统数字,则提示"猜小了"
# 4)如果等于系统数字,则提示"猜对了"
# 5)如果猜对了,按n则进入下一轮,按q表示退出
# 6)不允许连续猜错三次,否则退出整个游戏
while True:
user_name = input("请输入用户名:")
user_psw = input("请输入密码:")
if user_name == 'admin' and user_psw == 'admin':
print("欢迎进入猜数字逻辑游戏")
print("""
1.按i进入猜数字游戏
2.按q退出系统
""")
order = input("请输入命令:")
if order == 'i':
sys_num = randint(1, 100)
print(f"系统数字为{sys_num}")
while True:
count=1
while count<4:
user_num = input("请输入1-100之间的数字:")
user_num = int(user_num)
if user_num > sys_num:
print("猜大了")
count+=1
elif user_num < sys_num:
print("猜小了")
count+=1
else:
print("猜对了")
count=0
print("您已经连续输错三次,欢迎下次再来")
break
else:
print("您已经退出!欢迎下次再来")
break
break
else:
print("用户名或密码错误!请重新输入")