if 判断语句
基本使用语法
if 条件:
代码执行体
当条件成立的时候,会执行 代码执行体。
if 3>10:
print("我很不理解为什么这样")
3>10 不成立,下面不会打印。
if … else …
当if后面的条件不成立的时候,会执行else语句中的内容。
if 3>10:
print("我很不理解为什么这样")
else:
print("hahaha")
生成随机值。
当随机值大于0.5 的时候 输出”你赢了”,否则输出 “我赢了”。
import random
# 生成0-1 随机值
n = random.random()
if n > 0.5:
print('你赢了')
else:
print('我赢了')
if … else … 只能判断两种场景。
正常可能的场景有多个。比如班级学生成绩评比。
成绩 | 结果 |
---|---|
0-59 | 不及格 |
60-79 | 良 |
80-100 | 优 |
不再0-100之间 | 数据有误 |
if … elif … else …
elif 作为分支条件,语句中可以有多个分支。
import random
# 随机生成整数
score = random.randint(0,130)
print('成绩为:',score)
if score>=0 and score<=59:
print('不及格')
elif score>=60 and score<=79:
print('良')
elif score>=80 and score<=100:
print('优')
else:
print('数据输入有误')
当有多种条件分支的时候可以使用上面这种语法;
for … else …
for循环如果正常运行完成,如果没有break中断,会执行else语句中的内容。
模拟ATM输入密码操作,当输入密码错误3次,会锁定银行卡,并提示明天再试。
- 循环三次
- 当在这三次之内如果输入正确,使用 break 中断循环。
- 如果三次都输入失败,停止循环,并提示
明天再试
```python import random随机生成整数
for i in range(3): passwd = random.randint(0,100) print(f”第{i+1}次数输入密码为”,passwd) if passwd>=80 and passwd <=100:
else:print("输入正确,进入系统")
break
else: print(‘输错次数3次,请明天再试!’)print("输入有误,请重试!")
注意:这里的 for... else ... 这里的else 一定要跟 for 对齐。
<a name="KfWAx"></a>
# 金子塔
![image.png](https://cdn.nlark.com/yuque/0/2021/png/87080/1634382629782-836caf26-ccef-41ed-8ddd-b25a7d41ac6d.png#clientId=u472f49da-5d0c-4&from=paste&height=125&id=u13500acc&margin=%5Bobject%20Object%5D&name=image.png&originHeight=250&originWidth=286&originalType=binary&ratio=1&size=24255&status=done&style=none&taskId=u2421f48c-568b-4b61-bffc-d0f56c5d3fc&width=143)
```python
for n in range(1,6):
# print("*"*(2*n-1))
#空格的数量
blank = (5-n)*" "
# 星星的数量
star ="*"*(2*n-1)
print(blank+star)
for i in range(5,0,-1):
blank = (5-i)*" "
star = (i*2-1)*"*"
print(blank + star)
打印爱心
print('\n'.join([''.join([('Love'[(x-y) % len('Love')] if ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3 <= 0 else ' ') for x in range(-30, 30)]) for y in range(30, -30, -1)]))