程序员求职经验分享与学习资料整理平台

网站首页 > 文章精选 正文

Python选择结构,程序智能化的开始

balukai 2025-06-30 14:39:35 文章精选 12 ℃

编程包括哪些结构?

顺序结构,从上至下,逐行执行。

选择结构,条件成立才执行。

循环结构,可以重复执行。

无论多么复杂的程序,无论哪一种编程语言,都是由这三种基本结构按照某种顺序组织起来的。

这也是程序智能化的开始,可以根据某些条件来判断代码应该执行到哪一个分支。

选择结构语法格式

如果条件成立,就会执行其下方的代码块。但是,Python 是如何判定 if 下方哪些代码会被执行呢?

缩进机制!

缩进是 Python 最具特色的语法之一,之所以 Python 语言简洁优雅,主要就是具有缩进机制。if 语句末尾加冒号,然后下方缩进的语句都归 if 管辖。

if True:
    print(123)
    print(456)

print("第一次判断结束")

if False:
    print(135)
    print(246)

print("第二次判断结束")

输出:
123
456
第一次判断结束
第二次判断结束

注意:缩进为 4 个空格 或 1 个 Tab 键,推荐使用 Tab 键,如果混合使用,在某些编辑器中运行会显示缩进异常。

如果程序正确,换行时会自动缩进。

三目运算符

三目运算符相当于 if ... else ...

res = exp1 if condition else exp2

condition 是判断条件,exp1 和 exp2 是两个表达式。 当条件condition为真,res = 表达式exp1的运算结果。

当条件condition为假,res = 表达式exp2的运算结果。

a = 2
b = 3

res = a  if a > b else b
print(res)

比较运算符

运算符

描述

实例

==

等于 - 比较对象是否相等

(a == b) 返回 False。

!=

不等于 - 比较两个对象是否不相等

(a != b) 返回 True。

>

大于 - 返回x是否大于y

(a > b) 返回 False。

<

小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量 True 和 False 等价。

(a < b) 返回 True。

>=

大于等于 - 返回x是否大于等于y。

(a >= b) 返回 False。

<=

小于等于 - 返回x是否小于等于y。

(a <= b) 返回 True。

Python逻辑运算符

Python语言支持逻辑运算符,以下假设变量 a 为 10, b为 20:

运算符

逻辑表达式

描述

实例

and

x and y

布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。

(a and b) 返回 20。

or

x or y

布尔"或" - 如果 x 是非 0,它返回 x 的计算值,否则它返回 y 的计算值。

(a or b) 返回 10。

not

not x

布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。

not(a and b) 返回 False

注意:运算符优先级:not > and > or。

a = 1
b = 2
c = 3

if a < b < c:
    print("a < b < c")
    
if a < b and b < c:
    print("a < b < c")

pass语句和变量作用域

如果 if 条件下方没有语句,则会显示报错,因此,可以使用 pass 填充。

if 语句内部变量可以在 if 外部进行访问。

a = 1
b = 3
if a > b:
    pass 
else:
    c = 123

print(c)

Python身份运算符

身份运算符用于比较两个对象的存储单元。

运算符

描述

实例

is

is 是判断两个标识符是不是引用自一个对象

x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False

is not

is not 是判断两个标识符是不是引用自不同对象

x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。

match语句

1.只有第一个匹配的模式会被执行,不会顺次执行后面的case。
2.可以用 | 表示匹配多个模式。
3.变量名 _ 被作为 通配符 并必定会匹配成功。
4.如果没有 case 匹配成功,则不会执行任何分支。

n = int(input())

match n:
    case 1:
        print("上学")
    case 2:
        print("生日聚会")
    case 3 | 4 | 5:
        print("游泳")
    case _:
        print("自由支配")

注意:python3.10开始新增了match语句。

疯狂刷题

  • P144 奇数偶数判断
  • P145 判断一个数能否同时被3和5整除
  • P143 判断闰年
  • P12 求三个数中最大数
  • P211 计算邮资
  • P212 晶晶赴约会
  • P210 简单计算器

Tags:

最近发表
标签列表