Day4-Summary

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:
代码块

你可能感兴趣的:(Day4-Summary)