一、if语句
1、if语句基本结构
if 要判断的条件:
条件成立时,要做的事
else:
条件不成立,执行的动作
示例:
Age = int(input('请输入你的年龄:'))
if Age < 18:
print('您没有成年,请回家写作业!')
else:
print('您已成年,欢迎进入本网吧!')
执行效果:
2、if嵌套
(1) if基础语法:
if 要判断的条件:
条件成立时,要做的事情
elif 条件2:
...
else:
条件不成立时,要做的时请
elif和else都必须和if联合使用,不能单独使用
示例:
代码:
Holiday_name = input('请输入节日[植树节、情人节、愚人节或者空]:')
if Holiday_name == '植树节':
print('买树苗,种树!')
elif Holiday_name == '情人节':
print('买花、买礼物、买包、买化妆品!!!')
elif Holiday_name == '愚人节':
print('想点子兜开心,吃饭!')
else:
print('不过节!')
执行效果:
(2) if嵌套语法
if 条件1:
条件1满足执行的动作
if 满足条件1的基础上的条件2:
...
else:
条件1满足,条件2不满足的情况下
else:
条件1不满足时,执行的动作
示例:
代码:
Have_ticket = input('您有车票吗?')
if Have_ticket == '有':
print('有车票,请输入您带的刀的长度。')
Knife_lenth = float(input('您带的刀长度?'))
if Knife_lenth > 20:
print('您带的刀长达%.1f了,禁止入内!'%Knife_lenth)
else:
print('您带的刀长度为%.1f,可以入内!'%Knife_lenth)
else:
print('上车前,请先买票!不支持,先上车,再买票!')
执行效果:
二、逻辑运算符
and:
条件1 and 条件2
两个条件同时满足,就返回True
两个条件有一个不满足,就返回False
or:
条件1 or 条件2
两个条件只要有一个满足,就返回True
两个条件都不满足,返回False
and示例:
Age = int(input('请输入你的年龄:'))
if Age >=0 and Age <=120:
print('年龄正确!')
else:
print('你个糟老头子,坏的很!年龄错误!')
执行效果:
or示例
代码:
Python_score = float(input('请输入你的Python成绩:'))
C_score = float(input('请输入你的C语言成绩:'))
if Python_score < 60 or C_score < 60:
print('好好学习,来年补考')
else:
print('好消息!考试通过!')
执行效果:
三、while语句
1、while基本结构
while 条件:
条件满足时,做的事情1
条件满足时,做的事情2
else:
条件不满足时,做的事情
2、while死循环
while True: ##true为真,条件一直满足,print语句一值执行
print('hello python')
3、while嵌套
while 条件1:
while 条件2:
条件1、条件2均满足执行的动作。
else:
条件1满足,条件2不满足,执行的动作。
else:
条件2不满足执行的动作。
4、while小练习
1、求1…100的和
Num = 0
Sum = 0
while Num <= 100:
Sum += Num
Num +=1
print("和为%d"%Sum)
2、猜数字游戏
规则:
猜数字游戏
1. 系统随机生成一个1~100的数字;
2. 用户总共有5次猜数字的机会;
3. 如果用户猜测的数字大于系统给出的数字,打印“too big”;
4. 如果用户猜测的数字小于系统给出的数字,打印"too small";
5. 如果用户猜测的数字等于系统给出的数字,打印"恭喜",并且退出循环;
代码实现:
import random
Computer_input_num = random.randint(1,100)
Try_count = 5
while Try_count > 0:
User_input_num = int(input('请输入一个你要猜的数字,您还有%d次机会:'%Try_count))
Try_count -= 1
if User_input_num < Computer_input_num:
print('too small')
continue
elif User_input_num > Computer_input_num:
print('too big')
else:
print('恭喜,你猜对了!!!')
break
else:
print('很遗憾,你的机会已经用完了。答案是%d'%Computer_input_num)
执行效果:
3、在控制台连续输出五行*,每行依次递增及递减
期望效果:
递增:
*****
****
***
**
*
递减:
*
**
***
****
*****
代码实现及执行效果:
递减:
Col = 5
while Col >= 1:
Row = 1
while Row <= Col:
print('*',end='') ##end=''表示打印不换行
Row += 1
print('') ##取消打印不换行
Col -= 1
执行效果:
递增:
代码实现:
row = 1
while row <= 5: # 行数,循环五次
K_col = 1
X_col = 1
while K_col <= 5 - row:
print(' ', end='')
K_col += 1
while X_col <= row:
print('*', end='')
X_col += 1
print()
row += 1
执行效果: