if条件结构
1.if-elif-else 结构
1) 语法:
if 条件语句1:
代码块1
elif 条件语句2:
代码块2
elif 条件语句3:
代码块3
...
else:
代码块n
2) 执行过程:
先判断条件语句1是否为True,如果为True就执行代码块1,然后整个if结束,直接执行其他语句;
如果为False,就判断条件语句2是否为True,如果为True就执行代码块2,然后整个if结束,直接执行其他语句;
如果为False,就判断条件语句3是否为True,如果为True就执行代码块3,然后整个if结束,直接执行其他语句;
以此类推,如果所有条件语句均为False,就执行else后的代码块。
练习: 给一个年龄值,让你根据年龄判断这个人是儿童(0-12),少年(1318),青年(1928),中年(29~50),老年(50以上)
age = int(input('请输入某人的年龄:'))
if age <= 12:
print('他/她是儿童')
elif age <= 18:
print('他/她是少年')
elif age <= 28:
print('他/她是青年')
elif age <= 50:
print('他/她是中年')
else:
print('他/她是老年')
2.if嵌套
可以在if结构中再嵌套其他的if语句
判断一个数是奇数还是偶数,同时判断这个数能不能被4整除,判断数字个位数是否为3
num = int(input('请输入一个数字:'))
if num % 2 == 0:
print('偶数')
if num % 4 == 0:
print('能被4整除')
else:
print('奇数')
if num % 10 == 3:
print('个位数为3')
for循环
1.什么时候使用循环
代码中需要重复执行某个操作的时候,就想到用循环
2.python中有for循环和while循环
3.for循环
1) 语法
for 变量名 in 序列:
循环体
2) 说明
for,in - 关键字,固定写法
: - 固定写法
变量名 - 和声明变量时的变量名要求一样
序列 - 容器型数据,python中常见的序列: 字符串、列表、字典、集合、元组、迭代器、生成器、range
循环体 - 和for保持一个缩进的一条或多条语句;循环体就是会被重复执行的代码
3) 执行过程
让变量去序列中取值,一个一个取完为止;每取一个值执行一次循环体。
(for循环的循环次数,由序列中元素的个数来控制)
for i in ('鸡', '你', '太美'):
print(i)
for i in '鸡你太美':
print(i)
4.range函数 - 专门用来产生一定范围的数字序列
1) range(N) - 产生一个0~N-1的数字序列(整数);注意:N必须是大于0的整数
range(10) - 产生0~9的数字
2) range(M,N) - 产生一个M~N-1的数字序列;注意:M,N均为整数且N>M
range(2,8) - 产生2~7的数字
3) range(M,N,step) - 每次加step的数,直到N的前一个数为止
练习1: 统计1000以内能被13整除的数的个数
for i in range(0, 1000, 13):
count += 1
print(count, '个', sep='')
练习2: 统计1000以内能被2整除但不能被5整除的数的个数
count1 = -1
count2 = -1
for i in range(0, 1000, 2):
count1 += 1
for j in range(0, 1000, 10):
count2 += 1
print('1000以内能被2整除但不能被5整除的数有', count1-count2, '个', sep='')
练习3: 计算1 + 2 + 3 + ... + 100 = ?
sum = 0
for num in range(101):
sum = sum + num
print(sum)
练习4: 计算1 * 2 * 3 * ... * 10 = ?
sum = 1
for num in range(1,11):
sum = sum * num
print(sum)
while循环
1.while循环
1) 语法
while 条件语句:
循环体
2) 说明
while - 关键字
条件语句 - 和if后面的条件语句要求一样:任何有结果的表达式(除了赋值语句以外的其他的语句都可以)
循环体 - 和while保持一个缩进的一条或多条语句;(会被重复执行的代码块)
3) 执行过程
先判断条件语句是否为True(如果不是布尔先转换为布尔),如果为True则执行循环体;
执行完循环体再判断条件语句是否为True,如果为True再执行循环体;
以此类推, 直到条件语句的结果是False,整个循环结束
num = 1
sum = 0
while num <= 100:
sum = sum + num
num += 1
print(sum)
2.for循环和while循环的选择
for循环: 当循环次数确定的选择for循环
while循环: 死循环;循环次数不确定
练习: 猜数字游戏
随机产生一个数,用户不断的输入数字直到输入的数字和产生的数字一样为止
import random
num = random.randint(0,100)
g = int(input('请输入你猜测的数字:'))
while g != num:
if g <= 0 or g >= 100:
print('请输入0~100之间的数字!')
elif g > num:
print('太大了')
elif g < num:
print('太小了')
g = int(input('请重新输入:'))
print('恭喜你猜对了!')
循环关键字
1.continue关键字
continue只能出现在循环体中;当执行循环体的时候遇到continue,当此循环直接结束,进入下次循环的判断
print(x)
continue
print('+++++')
print('=====')
2.break关键字
break只能出现在循环体中;当执行循环体的时候,如果遇到break,整个循环直接结束;
for x in range(10):
print(x)
if x == 5:
break
print('++++++')
while True:
当满足循环条件时:break
3.else关键字
当循环自然死亡,会执行,当循环因为break而结束,就不会执行
1) 完整的for循环
for 变量 in 序列:
循环体
else:
代码块
2) 完整的while循环
while 条件语句:
循环体
else:
代码块