目录
一、python判断语句
1、布尔类型和比较运算符
a、布尔类型
布尔类型的字面量:True(表示真),False(表示假)
要注意首字母要大写
b、比较运算符
- ==:判断内容是否相等,满足为True,不满足为False
- !=:判断内容是否不相等,满足为True,不满足为False
- >:判断运算符左侧内容是否大于右侧内容,满足为True,不满足为False
- <:判断运算符左侧内容是否小于右侧内容,满足为True,不满足为False
- >=:判断运算符左侧内容是否大于等于右侧内容,满足为True,不满足为False
- <=:判断运算符左侧内容是否小于等于右侧内容,满足为True,不满足为False
2、if语句的基本格式
a、基本语法:
if 要判断的内容:
条件成立时要做的事情
b、案例:
age = 30
if age >= 18:
print("成年啦成年啦!!!")
3、if else语句
a、基本语法:
if 要判断的内容:
条件成立时要做的事情
else:
不满足条件时要做的事情
b、案例:
age = 30
if age >= 18:
print("成年啦成年啦!!!")
else:
print("未成年,回家写作业")
4、if elif else语句
a、基本语法:
如果满足if中的条件,则不会执行后面的elif和else
如果不满足if中的条件,则会继续执行后面的elif
if 条件1:
条件1满足要做的事情
elif 条件2:
条件2满足要做的事情
elif 条件3:
条件3满足要做的事情
else:
以上条件都不满足要做的事情
b、案例:
按分数的等级输出不同的内容
num = 60
if num >= 100:
print("你真是个天才")
elif num >= 80:
print("你真优秀")
elif num >= 60:
print("还要努力啊")
else:
print("回家等着吃竹笋炒肉吧")
5、判断语句的嵌套
a、基本语法:
if 条件1:
满足条件1要做的事情
if 条件2:
满足条件1并且也满足条件2要做的事情
else:
不满足条件1要做的事情
b、案例:
如果身高高于120或者vip小于3级则要买票
if int(input("你有多高呀?")) >= 120:
print("你真高")
if int(input("那你vip等级是多少呀?")) >= 3:
print("不好意思,尊贵的vip用户,你快进去吧")
else:
print("要么充vip,要么买票")
else:
print("小朋友,直接进去吧")
二、python循环语句
1、while循环的基础语法
a、基本语法
while 条件:
条件满足时要做的事情
b、案例
从1输出到100
i = 1
while i <= 100:
print(f"第{i}次")
i += 1
生成一个1-100的随机数,猜测此随机数是多少,如果猜中则退出程序
import random
num = random.randint(1,100)
count_num = 0
while True:
count_num += 1
num1 = int(input("请输入一个1-100之间的数字:"))
if(num1 == num):
print("恭喜你,猜对了")
break;
else:
if(num1 > num):
print("猜大了")
else:
print("猜小了")
print("你猜了",count_num,"次")
2、while循环的嵌套应用
a、基本语法:
while 条件1:
条件1满足要做的事情
while 条件2:
条件2满足要做的事情
b、案例:
循环10*10次,总共循环100次
i1 = 1;
while i1 <= 10:
i2 = 1;
while i2 <= 10:
print(i1,i2)
i2 += 1
i1 += 1
打印99乘法表
i1 = 1
while i1 <= 9:
i2 = 1
while i2 <= i1:
print(f"{i1} * {i2} = {i1 * i2}\t", end='')
if i1 == i2:
print()
i2 += 1
i1 += 1
3、range语句
a、基本语法
- range(num)
获取一个从0开始,到num结束的数字序列(不含num本身)
如range(5)取到的数据是:[0,1,2,3,4] - range(num1,num2)
获取一个从num1开始到num2结束的数字序列(不含num2本身)
如range(5,10)取到的数据是:[5,6,7,8,9] - range(num1,num2,step)
获取一个从num1开始到num2结束的数字序列(不含num2本身),数字之间的步长为step
如range(5,10,2)取得的数据是:[5,7,9]
4、for循环的基础语法
a、基本语法
下面的“待处理数据集”严格来说称之为“序列类型”,其内容可以一个个依次取出的一种类型
for 临时变量 in 待处理数据集:
循环满足条件时执行的代码
b、案例
循环字符串的单个字符
name = '这是字符串'
for i in name:
print(i)
循环输出1-10
for i in range(1,11):
print(i)
c、变量的作用域
试想,下面的这段代码for外面的 print(f"结尾{i}") 能否输出内容呢?
for i in range(5):
print(i)
print(f"结尾{i}")
经过实际代码证明,最后是会输出内容的,但是这样是不符合代码规范的,规范情况下,应该如下书写方式:
i = 0
for i in range(5):
print(i)
print(f"结尾{i}")
for循环中的i只会作用于for以内的范围,想要在for外面使用i,则需要提前定义一个i,这样才符合python代码规范
5、for循环的嵌套应用
a、基本语法
for 临时变量 in 待处理数据集(序列):
循环满足时要做的事情
for 临时变量2 in 待处理数据集(序列)2:
循环满足时要做的事情
b、案例
实现99乘法表
for i in range(1, 10):
for j in range(1, i + 1):
print(f"{j} * {i} = {i * j}\t", end='')
print()
6、循环中断:break和continue
continue:中断本次循环,直接进入下一次循环。for循环和while循环效果一致
for i in range(5):
print("语句1")
continue
print("语句2")
最后的结果只会输出5次”语句1“
break:直接结束循环。for循环和while循环效果一致
for i in range(5):
print("语句1")
break
print("语句2")
最后的结果只会输出1次”语句1“
7、综合案例
总金额1W元,共20个人,循环并生成随机数,如果随机数小于5则跳过,如果大于等于5则总金额减去1000元,总金额小于等于0则退出程序
import random
total_count = 10000
one_count = 1000
for i in range(1,21):
rand = random.randint(1,10)
if rand < 5:
print(f"我是第{i}位,我的随机数是{rand},所以我不要钱")
continue
else:
total_count -= one_count
print(f"向{i}发了工资{one_count}")
if total_count <= 0:
print("没钱了,财库空了")
break