一.and与or运算
使用and连接多个选择条件,只有同时满足多个条件,才为True,才执行后面的语句
使用or连接多个选择条件,只要满足其中一个就为True,就执行后面的语句
二.程序的组织结构
1.顺序结构
顺序结构是程序中最基础的语句。
赋值语句,输入输出语句,模块导入语句等都是顺序结构的语句
2.选择结构
(1)if语句
语法结构:
if表达式:
语句块
#注意表达式后面的“:”和缩进,并且使用if语句时,如果语句块只有一句代码,可以将语句块直接写在冒号后面
比如
a, b = 10, 5
if a>b : max = a
执行顺序:
如果表达式的值为True,就执行语句块
如果表达式的值为False,就跳过语句块,继续执行后面的语句
(2)if……else……语句
语法结构:
if表达式:
语句块1
else:
语句块2
执行顺序:
如果表达式的值为True,执行语句1,否则执行语句2
number = eval(input('请输入数字:'))
# if number == 123456:
# print('中奖了')
# else:
# print('没中奖')
# 上面可简写为:
'''
number == 123456 为True将“中奖了”赋值给变量result,否则将“没中奖” 赋值给result”
'''
result = '中奖了' if number == 123456 else '没中奖'
print(result)
(3)if……elif……else语句
语法结构
if 表达式1:
语句块1
elif 表达式2:
语句块2
……
elif 表达式n:
语句块n
else:
语句块n+1
(4)if语句可以嵌套
3.循环结构
(1)for
语法结构:
for 循环变量 in 遍历对象:
语句块
遍历对象一般有
字符串;
文件;
组合数据类型;
range()函数,range()函数会产生[n,m)的整数序列,包含n,不包含m
示例求水仙花数:
'''
100-999之间的水仙花数
153
3*3*3 + 5*5*5 + 1*1*1 = 153
这样的数叫水仙花数
'''
for i in range(100,1000):
sd = i % 10 #个位数
tens = i // 10 % 10 #十位数
hundred = i // 100 % 10 # 百位数
if sd**3 + tens**3 + hundred**3 == i:
print(i)
遍历循环的扩展模式:
else语句只在循环正常结束后才执行
通常与break和continue语句一起使用
语法结构
for 循环变量 in 遍历对象:
语句块1
else:
语句块2
(2)while
通过一个条件来控制是否要继续反复执行循环体中的语句
语法结构
while 表达式:
语句块
执行流程:
当表达式的值为True时,执行语句块;
当表达式的值为False时,跳过语句块而执行语句块之后的代码
扩展结构:
语法结构
while 表达式:
语句块1
else:
语句块2
else语句只在循环正常结束后才执行
通常与break和continue语句一起使用
示例
# answer = input('今天上课了吗? y/n')
#
# while answer == 'y':
# print('好好学习')
# answer = input('今天上课了吗? y/n')
# 求1到100的和
s = 0
i = 0
while i <= 100:
s += i
i += 1
print('1到100的和:', s)
(3)嵌套循环
在一个循环结构中嵌套另一个完整的循环结构
三.程序跳转语句
(1)break
只能在循环结构中使用,通常与if一起搭配使用
break只退出当前循环
语法结构:
break与while一起使用时:
while 表达式1:
执行代码
if 表达式2:
break
break与for一起使用时:
for 循环变量 in 遍历对象:
执行代码
if 表达式:
break
(2)continue
continue是后面的代码不执行,跳转到循环体从头开始执行
语法结构
break与while一起使用时:
while 表达式1:
执行代码
if 表达式2:
continue
break与for一起使用时:
for 循环变量 in 遍历对象:
执行代码
if 表达式:
continue
四.pass空语句
空语句pass 不做任何事情,只起到占位符作用,使语法结构完整,不报错
一般用在if、for、while、函数的定义、类的定义中
语法结构:
if 表达式:
pass
while 表达式:
pass
for 循环变量 in 遍历对象:
pass
九.程序流程图