导图
顺序语句
概念
就是按照顺序来,按照自己写的代码逐行顺序输出,叫做顺序语句
print("a") print("b") print("c")
上面👆代码输出
abc(一个字母占一行,后面也代表这个意思👉 ),而不是acb或bac或cda
条件语句
概念
条件语句能够表达 "如果 ... 否则 ..." 这样的语义. 这构成了计算机中基础的 逻辑判定.
条件语句也叫做分支语句, 表示了接下来的逻辑可能有几种走向.
条件语句分类
if语句
if (3 == 2): print("hello") print("programmer") print("bai")
控制台显示
bai
我们再来看一段代码,与上面代码对比有什么区别?
if (3 == 2): print("hello") print("programmer") print("bai")
控制台显示
无
为什么呢?
这时要考虑到缩进的重要性,在键盘上是TAB键
这三个语句都包含在了if语句里面了
而最开始的代码最后一个语句没有包含在if语句里面
下面的if..else..语句的缩进也是如此
if...else...语句
a = int(input("请输入你微信余额:")) if a >= 700: print("去长沙旅游!") else: print("在宿舍呆着")
控制台显示
if...elif...else...语句
多条件分支elif
a = int(input("请输入你微信钱包余额:")) if a > 3000: print("暑假旅行") elif (a > 1000 and a <= 3000) : print('自驾游') else: print('宅家')
控制台显示
缩进和代码块
概念
缩进 是指一个TAB键
代码块 是指的是一组放在一起执行的代码,都在上面举例到
好处和弊端
基于缩进的方式表示代码块,
好处:强制要求程序猿要写明确的缩进, 来明确代码之间的相对关系.
如果缩进书写的不对, 则直接报错.
弊端:如果缩进层次比较多, 就容易分不清楚某个语句属于哪个层级.
接下来再举个栗子
看下面代码
a = int(input('请输入第一个整数:')) b = int(input('请输入第二个整数:')) if a == 1: if b == 2: print('hello') print('programmer') print('bai')
控制台显示
可以看到,代码逻辑是这样子的
空语句pass
作用
并不会对程序的执行有任何影响, 只是占个位置,保Python语法格式符合要求.
举个栗子
#代码一 a = int(input('请输入你微信余额:')) if(a > 1000): print('去长沙旅游') #代码二 a = int(input('请输入你微信余额:')) if(a <= 1000): pass else: print('去长沙旅游')
以上👆两个代码是等价的
控制台显示
循环语句
有些操作需要反复执行,这时就需要循环
while循环
while 条件:
循环体
注:条件为真,执行while循环
条件为假,不执行while循环
①打印1-10的整数
同时也要注意代码块和缩进
#打印 1-10 的整数 num = 1 while num <= 10: print(num) num += 1
②打印1+2+3+...+100的结果
#1-100的和 num = 1 result = 0 while num <= 100: result += num num += 1 print(f'result = {result}')
控制台显示
for循环
for 循环变量 in 可迭代对象:
循环体
注:"可迭代对象", 指的是 "内部包含多个元素, 能一个一个把元素取出来的特殊变量"
①利用for循环打印1-10
for i in range(1 , 11): print(i)
注:range() 函数能生成可迭代对象,range(1,11)指的是[1-10]
② 利用for循环打印1-10的偶数
for i in range(2 , 12 , 2): print(i)
注: 通过 range 的第三个参数, 可以指定迭代时候的 "步长".也就是一次让循环变量加几.
range的步长也可以定义为负数
③求1-100的和
sum = 0 for i in range(1 , 101 , 1): sum += i print(sum)
控制台输出:5050
continue
continue 表示结束这次循环, 进入下次循环
举个栗子:打印1-10奇数
for i in range(1 , 10): if i % 2 == 0: continue print(i)
控制台输出:1 3 5 7 9(数字与数字之间隔一行)
break
break表示结束整个循环
还是像上面那个代码
for i in range(1 , 10): if i % 2 == 0: break print(i)
控制台输出:1
综合题
题目要求:请输入几个数字,再把这些数字求平均值,输入的数字以 ";"为结束
count = 0 sum = 0 while True: num = input('请输入数字:') if num == ';': break num = float(num) sum += num count += 1 print(sum / count)
控制台显示