一、if语句
1.三目运算符
Python中本身没有三目运算符,我们可以通过if-else模拟三目运算符三目运算符的特点:实现二选一的操作,可以简化if-else语句注意:三目运算符只有一行代码,所以只能实现简单的逻辑
""" 语法: 变量 = a if 条件 else b 作用:实现二选一的操作 工作原理:如果条件成立,则整个表达式的值为a,如果条件不成立,则整个表达式的值为b 优点:在一定程度上可以简化if-else语句 缺点:因为只有一行代码,所以只能实现简单的逻辑 """ # 1. num = int(input("请输入一个数:")) result = 0 if num % 2 == 0: result = '偶数' else: result = '奇数' print(result) result = '偶数' if num % 2 == 0 else '奇数' print(result) result = True if num % 2 == 0 else False print(result) result = 1 if num % 2 == 0 else 0 print(result) # 2. year = int(input("请输入一个年份:")) if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0): print(f"{year}是闰年") else: print(f"{year}是平年") r = "闰年" if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0) else "平年" print(r) r = True if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0) else False print(r)
二、循环语句【重点掌握】
1.概念
在生活中,循环指的是一个现象周期性或者重复性的出现
在编程中,在满足条件的情况下,反复执行某一段代码,在编程语言中出现的这种现象被称为循环,这段被重复执行的代码被称为循环体
Python中提供的循环语句有:while语句和for语句
2.while基本语法
语法:
while 表达式: 语句说明:当程序在从上往下执行的过程中,遇到while语句时,首先计算表达式的值,如果表达式的值为假,则跳过整个while语句,程序继续向下执行;如果表达式的值为真,则执行对应的语句;执行完语句,再去计算表达式的值,如果表达式的值为假,则跳过整个while语句,程序继续向下执行;如果表达式的值为真,则执行对应的语句......如此循环往复,直到表达式的值为假,整个循环才停止
""" while 条件: 循环体 注意: 1.while语句和if语句的条件的使用是完全相同的,可以通过常量,变量或表达式充当条件 2.书写循环语句根据具体的需求,需要考虑的核心问题:控制循环的次数,让循环可以在适当的时机停止下来,否则会形成死循环 """ # 需求:打印10遍hello world # 传统写法 # print("hello world") # print("hello world") # print("hello world") # print("hello world") # print("hello world") # print("hello world") # print("hello world") # print("hello world") # 1.基本语法【标准语法】 # 优化写法:循环体只需要书写一次,但是可以执行多次 print("start~~~~~") # a.初始化表达式 n = 0 # b.条件表达式 while n < 10: # c.循环体 print("hello world") # d.循环之后的操作表达式 n += 1 # n = n + 1 print('end~~~~~~~~') n = 9 while n >= 0: print("hello world") n -= 1
3.for基本语法
语法:
for 变量名 in 序列: 语句功能:for循环主要用于遍历任何序列【容器】,比如列表,字符串,元组,字典和集合等
遍历:指的是依次访问序列中的每一个元素,获取每个元素值
说明:按照顺序获取序列中的每个元素,赋值给变量名,再执行循环体,如此循环往复,直到取完序列中所有的元素为止
# 1.基本使用 """ while 条件:循环的次数由条件决定 for 变量 in 容器:循环的次数由容器中数据的个数决定 """ # a.遍历字符串 for ch in 'abcd': # 循环体 print(ch) """ 工作原理:将字符a取出,赋值给变量ch,执行循环体;接着字符b取出,赋值给变量ch,执行循环体; .....当字符串中所有的字符全部被取出,则循环结束 """ # b.遍历列表 for num in [34,6,7,8,7]: print(num - 10) """ 工作原理:将数字34取出,赋值给变量num,执行循环体;接着数字6取出,赋值给变量num,执行循环体; .....当列表中所有的数据全部被取出,则循环结束 """ # c.注意:如果for循环仅仅是为了控制执行的次数,其中的变量在循环中未被使用,则可以使用_代替 for _ in [34,6,7,8,7]: print("hello world") print("*" * 50) # 2.range(start,end,step)本身是一个容器,通过给定的范围,给定的步长产生容器中的数据 # print(list(range(10))) # print(list(range(1,10,2))) for _ in range(10): print('hello world') for i in range(10): print(i) for i in range(3,10): print(i) for i in range(1,10,2): print(i) for i in range(0,10,2): print(i) """ 总结: a.在实际项目开发中,常用for b.如果不确定循环的次数,则使用while c.如果确定循环的次数,则使用for """
4.while和for基本使用练习
# 1.打印0~9的数字 n = 0 while n <= 9: print(n) n += 1 for n in range(10): print(n) # 2.求1~100之间所有整数的和 m = 1 total = 0 while m <= 100: total += m # 累加 m += 1 print(total) total = 0 for m in range(1,101): total += m print(total) # 3.统计1~100之间3的倍数的个数 # 方式一 i = 1 count = 0 while i <= 100: if i % 3 == 0: count += 1 i += 1 print(count) count = 0 for i in range(1,101): if i % 3 == 0: count += 1 print(count) # 方式二 i = 3 count = 0 while i <= 100: count += 1 i += 3 print(count) count = 0 for i in range(3,101,3): count += 1 print(count) # 4.找出2000~2020年之间的所有的闰年,并统计个数 year = 2000 count = 0 while year <= 2020: if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0): print(f"{year}是闰年") count += 1 year += 1 print(count) count = 0 for year in range(2000,2021): if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0): print(f"{year}是闰年") count += 1 print(count)