1,if多分支结构
① if–elif–else
用途:
根据不同的条件执行不同的操作。
语法:
if 条件语句1 :
print(结果1)
elif 条件语句2:
print(结果2)
elif 条件语句3:
print(结果3)
else:
print(其他结果)
执行原理:
依次执行代码段,当结果为True时,执行对应代码并结束语句;当前面代码都为False时执行else后的代码。
#例:输入成绩,如果输入的成绩在90分以上(含90分)输出A;80分-90分(不含90分)输出B;70分-80分(不含80分)输出C;60分-70分(不含70分)输出D;60分以下输出E。
a = float(input('请输入分数')) # 数据转换成浮点型
if a < 0 or a > 100: # 排除异常数据
print('数据无效')
elif a >= 90:
print('A')
elif a >= 80:
print('B')
elif a >= 70:
print('C')
elif a >= 60:
print('D')
else:
print('E')
② if嵌套
# 例:输入一个数,如果输入的数是偶数就打印'偶数',否则打印奇数。如果这个数能被4整除,还要打印'4的倍数';
a = int(input('请输入数据')) # 数据转换成整型
if a % 2 == 0 :
print('偶数')
if a % 4 == 0: # 语句嵌套
print('4的倍数')
else:
print('奇数')
if a == 3 :
print("3")
2,for循环
语法:
for 变量 in 序列 :
循环体
说明:for in 冒号 --固定写法。
变量–变量名(程序员命名)
序列–容器型数据类型的数据,例如字符串·列表·元组·集合·字典·迭代器·生成器·range等。
循环体–和for保持一个缩进的一条或者多条语句(需要重复执行的代码)。
执行过程:让变量到序列中取值,一个一个的取,取完为止每取一个值就执行一此循环体。
# 例:
a = '面对疾风吧'
for x in 'python':
print(x,a)
"""
执行结果:
p 面对疾风吧
y 面对疾风吧
t 面对疾风吧
h 面对疾风吧
o 面对疾风吧
n 面对疾风吧
"""
DRY原则(DDon’t Repeat Yourself ):是指编程过程中不写重复代码,将能够公共的部分抽象出来,封装成工具类或者用“abstraction”类来抽象公有的东西,降低代码的耦合性,这样不仅提高代码的灵活性、健壮性以及可读性,也方便后期的维护或者修改。
3,range( )函数:
range函数用于产生一定范围内的数字。
语法1: range(N)----产生【0,N)的数字范围。
语法2: range(M,N)—产生【M,N)的数字。注意M<N且是整数。
语法2: range(M,N,step)—从M开始每隔step产生一个数字,直到N前一个数字。
# 例:
for x in range(4):
print(x + 1, '面对疾风吧')
for x in range(-10, 1):
print('疾风', x)
for x in range(5, 0, -1):
print(x)
# 计算1到100的和。
sum1 = 0
for x in range(1,101,1):
sum1 += x
print(sum1)
# 例:统计1到100中能被3整除的数字个数。
sum2 = 0
for x2 in range(3, 101, 3):
sum2 += 1
print(sum2)
4,while循环
语法:
while 条件语句:
代码段(循环体)
说明:
while·冒号-----固定写法
条件语句-----任何有结果的表达式都可以(赋值语句不行)
循环体-----和while保持一个缩进的一条语句或者多条语句;需要重复执行的代码。
# 例:打印三次====
num3 = 0
while num3 < 3:
print('=====')
num3 += 1
原则上循环次数确定就使用for循环;循环次数不确定就使用while。
# 例:不断输入数据,直到输入的内容是0停止。
num4 = 1
while num4 != '0':
num4 = input('请输入数字')
5, 循环关键字
continue------只能出现在循环体中!用于结束当次循环并回到循环起点;
break------只能出现在循环体中!用于直接结束整个循环;
else------在循环体结尾,不影响程序执行,当循环自然结束时else后的代码才执行。
# 例:
for x in range(3):
print('猥琐发育,别浪!') # 打印三次
continue
print('优先推塔!') # 打印一次
# 例:查看一个数据是否时素数:
num = 13
for x in range(2, num):
if num % x == 0:
print(num, '不是素数')
break
else:
print(num, '是素数')