发布时间:2025-06-24 17:24:02 作者:北方职教升学中心 阅读量:908
num = 1fac = 1sum = 0while num <= 5: fac *= num sum += fac num += 1print(f'sum = {sum}')
3.2、空语句 pass
3、语法格式
2.3、练习
(1) 输入一个整数, 判定是否是奇数
# 输入一个整数, 判定是否是奇数# input返回值是字符串类型,需要转换成整型num = int(input("请输入一个整数:")) if num % 2 == 0: print(f"num = {num}是偶数")else: print(f"num = {num}不是偶数")
(2) 输入一个整数, 判定是正数还是负数
# 输入一个整数, 判定是正数还是负数num = int(input("请输入一个整数:"))if num > 0: print(f"num = {num} 是正数")elif num < 0: print(f"num = {num} 是负数")else: print(f"num = {num} 等于0")
(3) 判定年份是否是闰年
闰年规则
1、循环语句
3.1、while 循环
3.2、缩进和代码块
代码块指的是一组放在一起执行的代码.
在 Python 中使用缩进表示代码块. 不同级别的缩进, 程序的执行效果是不同的.a = input("请输入一个整数: ")if a == "1": print("hello") print("world")
a = input("请输入一个整数: ")if a == "1": print("hello")print("world")
注意上述代码的区别.
- 在代码1 中, print("world") 有一级缩进, 这个语句属于 if 内的代码块, 意味着条件成立, 才执行, 条件不成立, 则不执行.
- 在代码2 中, print("world") 没有缩进, 这个语句是 if 外部的代码, 不属于 if 内部的代码块. 意味着条件无论是否成立, 都会执行.
另外,代码块内部还可以嵌套代码块.
a = input("请输入第一个整数: ")b = input("请输入第二个整数: ")if a == "1": if b == "2": print("hello") print("world")print("python")
在这个代码中,
- print("hello") 具有两级缩进, 属于 if b == "2" 条件成立的代码块.
- print("world") 具有一级缩进, 属于 if a == "1" 条件成立的代码块.
- print("python") 没有缩进, 无论上述两个条件是否成立, 该语句都会执行.
基于缩进的方式表示代码块, 带来的好处就是强制要求程序猿要写明确的缩进, 来明确代码之间的相对关系. 如果缩进书写的不对, 则直接报错.
- 像 C++ / Java 这些语言, 即使完全不写缩进, 语法也不会报错. 代码可读性就比较差.
同时, 带来的坏处就是, 如果缩进层次比较多, 就容易分不清楚某个语句属于哪个层级.
if a == 1: if b == 2: if c == 3: if d == 4: if e == 5: if f == 6: if g == 7: print("hello") print("1") print("2")
- 请问, 上述代码中的 print("1") 和 print("2") 属于哪一级缩进?
因此, 就有了 "写 Python 需要自备游标卡尺" 这个梗.
2.4、什么是条件语句
条件语句能够表达 "如果 ... 否则 ..." 这样的语义. 这构成了计算机中基础的 逻辑判定.
条件语句 也叫做 分支语句, 表示了接下来的逻辑可能有几种走向.一个典型的例子:
如果丘处机没有路过牛家村,
- 1. 那么金兵不会死在郭, 杨两家手上
- 2. 郭, 杨两家就不会流亡北方
- 3. 郭夫人就不会去到大漠, 完颜洪烈就不会遇到包惜弱
- 4. 郭靖就不会和江南七怪救了铁木真
- 5. 蒙古就不会统一
- 6. 蒙古铁骑就不会西征
- 7. 欧洲就不会出现火药, 也就不会出现文艺复兴, 大航海.
- 8. 大炮就不会从欧洲传到日本, 日本得不到统一
- 9. 完颜洪烈就不会全力战, 金国内乱
- 10. 宋朝不会灭亡, 并诞生出资本主义. 中国成为最发达的国家.
如果 我认真敲代码 我就很容易找到工作否则 我就容易毕业就失业
其中 "我认真敲代码" 称为 条件. 如果条件成立(条件为真), 则会出现 "我就很容易找到工作" 这个情况. 如果条件不成立(条件为假), 则会出现 "我就容易毕业就失业".
当然, 同样的逻辑, 还可以反着表达.
如果 我选择躺平摆烂 我就容易毕业就失业否则 我就很容易找到工作
虽然结构变了, 但是整体表达的语义是等价的.
- PS: uu们, 你们是选择认真敲代码, 还是躺平摆烂呢?
2.2、break
break 表示结束整个循环
代码示例: 模拟吃包子. 吃第 3 个包子的时候吃出了半只虫.
for i in range(1,6): if i == 3: # i 等于3跳出循环 break print(f'吃完了第{i}个包子')
代码示例: 输入若干个数字, 求平均值. 使用 "分号" 作为结尾.
# 输入若干个数字, 求平均值. 使用 "分号" 作为结尾.sum = 0 # 计算数字总和count = 0 # 记录数字个数while True: num = input("请输入数字:") if num == ";": break num = float(num) sum += num count += 1print(f'平均值 = {sum / count}')
注意:需要一个一个输入!!!