目 录CONTENT

文章目录

Python(四) 基础语法:运算符和表达式

Python(四) 基础语法:运算符和表达式

一、为什么要学习运算符和表达式

写程序时,经常需要让计算机帮我们“算东西”“做判断”“组合数据”。

例如:

price = 20
count = 3
total = price * count
print(total)

这里的 * 就是运算符,表示乘法。

再比如:

age = 18

if age >= 18:
    print("已成年")

这里的 >= 也是运算符,表示“大于等于”。

在 Python 中,运算符和表达式几乎无处不在。学习变量、输入输出、条件判断、循环、函数时,都会用到它们。

简单来说:

  • 运算符:用来进行计算、比较、判断或赋值的符号或关键字。
  • 表达式:由变量、常量、运算符、函数调用等组成,并且能够计算出一个结果的代码。

掌握运算符和表达式,学生才能真正写出“会计算、会判断、会处理数据”的程序。


二、运算符的定义

运算符是 Python 中具有特殊含义的符号或关键字,用来对数据进行操作。

例如:

10 + 20

这里的 + 是运算符,表示加法。

score >= 60

这里的 >= 是运算符,表示大于等于。

name == "小明"

这里的 == 是运算符,表示判断两个值是否相等。


三、表达式的定义

表达式是能够计算出一个结果的代码。

例如:

10 + 20

这是一个表达式,结果是:

30

再比如:

age >= 18

这也是一个表达式,结果可能是:

True

或者:

False

再看一个例子:

price * count

如果:

price = 20
count = 3

那么表达式 price * count 的结果就是:

60

教学时可以告诉学生:

表达式就像一道算式,程序会把它算出一个结果。


四、运算符和表达式的关系

运算符通常是表达式的一部分。

例如:

a + b

这里:

  • ab 是参与运算的数据。
  • + 是运算符。
  • a + b 整体是表达式。

再如:

score >= 60

这里:

  • score60 是参与比较的数据。
  • >= 是比较运算符。
  • score >= 60 整体是表达式,结果是布尔值 TrueFalse

五、Python 中常见运算符分类

Python 中常见的运算符可以分为以下几类:

运算符类型 作用
算术运算符 做数学计算
赋值运算符 给变量赋值或更新变量
比较运算符 比较两个值的关系
逻辑运算符 组合多个条件
成员运算符 判断某个值是否在序列中
身份运算符 判断两个对象是否是同一个对象
位运算符 对整数的二进制位进行运算

初学阶段最重要的是:

  1. 算术运算符
  2. 赋值运算符
  3. 比较运算符
  4. 逻辑运算符
  5. 成员运算符

位运算符和身份运算符可以作为了解内容,不需要一开始讲得太深。


六、算术运算符

算术运算符用于数学计算。

常见算术运算符:

运算符 名称 示例 结果
+ 加法 3 + 2 5
- 减法 3 - 2 1
* 乘法 3 * 2 6
/ 除法 3 / 2 1.5
// 整除 3 // 2 1
% 取余 3 % 2 1
** 幂运算 3 ** 2 9

1. 加法运算符 +

+ 可以用于数字加法。

a = 10
b = 20

print(a + b)

输出:

30

+ 也可以用于字符串拼接。

first_name = "张"
last_name = "三"

print(first_name + last_name)

输出:

张三

注意:

数字加法和字符串拼接不是一回事。

print(10 + 20)
print("10" + "20")

输出:

30
1020

第一个是数学加法,第二个是字符串拼接。


2. 减法运算符 -

- 用于数字减法。

money = 100
cost = 35

left = money - cost

print(left)

输出:

65

也可以表示负数:

temperature = -5
print(temperature)

输出:

-5

3. 乘法运算符 *

* 用于数字乘法。

price = 12
count = 5

total = price * count

print(total)

输出:

60

* 还可以让字符串重复多次。

print("Python" * 3)

输出:

PythonPythonPython

这个特性可以用于简单分隔线:

print("-" * 20)

输出:

--------------------

4. 除法运算符 /

/ 表示普通除法。

print(10 / 2)
print(10 / 3)

输出:

5.0
3.3333333333333335

注意:

在 Python 中,使用 / 做除法时,结果通常是浮点数。

即使能整除:

print(10 / 2)

输出也是:

5.0

而不是整数 5


5. 整除运算符 //

// 表示整除,也叫地板除。

它会得到除法结果的整数部分。

print(10 // 3)
print(9 // 2)

输出:

3
4

可以这样理解:

10 除以 3 等于 3 余 1,所以 10 // 3 的结果是 3。
9 除以 2 等于 4 余 1,所以 9 // 2 的结果是 4。

注意:

// 不是四舍五入,而是向下取整。

print(5 // 2)
print(5.0 // 2)

输出:

2
2.0

6. 取余运算符 %

% 表示取余数。

print(10 % 3)
print(9 % 2)

输出:

1
1

取余在编程中很常用。

例如,判断一个数是奇数还是偶数:

number = int(input("请输入一个整数:"))

if number % 2 == 0:
    print("偶数")
else:
    print("奇数")

这里:

number % 2

表示 number 除以 2 的余数。

如果余数是 0,说明它能被 2 整除,是偶数。


7. 幂运算符 **

** 表示乘方。

print(2 ** 3)
print(3 ** 2)

输出:

8
9

解释:

  • 2 ** 3 表示 2 的 3 次方,也就是 2 * 2 * 2
  • 3 ** 2 表示 3 的 2 次方,也就是 3 * 3

计算正方形面积:

side = 5
area = side ** 2

print(area)

输出:

25

七、算术表达式

由数字、变量和算术运算符组成的表达式,叫算术表达式。

例如:

10 + 20
price * count
(a + b) / 2

例子:计算平均分。

chinese = 90
math = 95
english = 88

average = (chinese + math + english) / 3

print(f"平均分是{average:.2f}")

输出:

平均分是91.00

这里:

(chinese + math + english) / 3

就是一个算术表达式。


八、赋值运算符

赋值运算符用于给变量赋值,或者更新变量的值。

最常见的赋值运算符是:

=

例子:

name = "小明"
age = 18

这里不是数学中的“相等”,而是把右边的值保存到左边的变量中。

可以读作:

把 "小明" 赋值给变量 name。
把 18 赋值给变量 age。

1. 普通赋值

x = 10
print(x)

输出:

10

变量的值可以被重新赋值。

x = 10
x = 20

print(x)

输出:

20

因为第二次赋值会覆盖第一次的值。


2. 链式赋值

可以同时给多个变量赋同一个值。

a = b = c = 0

print(a)
print(b)
print(c)

输出:

0
0
0

这表示 abc 的值都是 0。


3. 多变量赋值

Python 支持一次给多个变量赋值。

name, age, city = "小明", 18, "北京"

print(name)
print(age)
print(city)

输出:

小明
18
北京

注意:

左边变量个数和右边数据个数要一致。

错误示例:

a, b = 10, 20, 30

这会报错,因为左边有 2 个变量,右边有 3 个值。


4. 复合赋值运算符

复合赋值运算符用于“在原来变量的基础上进行运算,再赋值回去”。

常见复合赋值运算符:

运算符 含义 等价写法
+= 加后赋值 x = x + n
-= 减后赋值 x = x - n
*= 乘后赋值 x = x * n
/= 除后赋值 x = x / n
//= 整除后赋值 x = x // n
%= 取余后赋值 x = x % n
**= 幂运算后赋值 x = x ** n

例子:

count = 0
count += 1

print(count)

输出:

1

这里:

count += 1

等价于:

count = count + 1

5. 复合赋值常见场景

统计次数:

count = 0

count += 1
count += 1
count += 1

print(count)

输出:

3

累加总和:

total = 0

total += 10
total += 20
total += 30

print(total)

输出:

60

循环中经常会用到复合赋值:

total = 0

for number in range(1, 6):
    total += number

print(total)

输出:

15

九、比较运算符

比较运算符用于比较两个值之间的关系。

比较表达式的结果一定是布尔值:

True

或:

False

常见比较运算符:

运算符 含义 示例 结果
== 等于 3 == 3 True
!= 不等于 3 != 2 True
> 大于 5 > 3 True
< 小于 5 < 3 False
>= 大于等于 5 >= 5 True
<= 小于等于 4 <= 5 True

1. 等于 ==

== 用来判断两个值是否相等。

print(10 == 10)
print(10 == 20)

输出:

True
False

注意:

=== 不一样。

  • = 是赋值。
  • == 是判断是否相等。
age = 18      # 把 18 赋值给 age
age == 18     # 判断 age 是否等于 18

这是初学者非常容易混淆的地方。


2. 不等于 !=

!= 用来判断两个值是否不相等。

password = "123456"

print(password != "admin")

输出:

True

3. 大于、小于、大于等于、小于等于

score = 85

print(score > 90)
print(score >= 60)
print(score < 60)
print(score <= 100)

输出:

False
True
False
True

这些比较运算符经常用在 if 条件判断中。

score = int(input("请输入成绩:"))

if score >= 60:
    print("及格")
else:
    print("不及格")

4. 链式比较

Python 支持链式比较。

例如,判断成绩是否在 0 到 100 之间:

score = 85

if 0 <= score <= 100:
    print("成绩有效")
else:
    print("成绩无效")

这比下面写法更简洁:

if score >= 0 and score <= 100:
    print("成绩有效")

不过初学时可以先讲普通写法,再介绍链式比较。


十、比较表达式

比较表达式是使用比较运算符组成的表达式。

例如:

age >= 18
score == 100
password != "123456"

比较表达式的结果是 TrueFalse

例子:

age = 20
result = age >= 18

print(result)

输出:

True

这里:

age >= 18

先被计算成 True,然后赋值给变量 result


十一、逻辑运算符

逻辑运算符用于组合多个条件。

Python 中常见逻辑运算符有三个:

运算符 含义 说明
and 多个条件都为真,结果才为真
or 多个条件只要有一个为真,结果就为真
not 取反,真变假,假变真

1. and 运算符

and 表示“并且”。

只有左右两个条件都成立,结果才是 True

age = 20
has_ticket = True

if age >= 18 and has_ticket:
    print("可以入场")
else:
    print("不能入场")

这里必须同时满足:

  • 年龄大于等于 18。
  • 有票。

才可以入场。


2. or 运算符

or 表示“或者”。

只要左右两个条件有一个成立,结果就是 True

is_member = False
has_coupon = True

if is_member or has_coupon:
    print("可以享受优惠")
else:
    print("不能享受优惠")

这里只要是会员,或者有优惠券,就可以享受优惠。


3. not 运算符

not 表示“不是”或“取反”。

is_login = False

if not is_login:
    print("请先登录")

is_loginFalsenot is_login 就是 True

所以会输出:

请先登录

4. 逻辑运算真值表

and 的规则:

表达式 结果
True and True True
True and False False
False and True False
False and False False

or 的规则:

表达式 结果
True or True True
True or False True
False or True True
False or False False

not 的规则:

表达式 结果
not True False
not False True

5. 逻辑表达式

由比较表达式和逻辑运算符组成的表达式,叫逻辑表达式。

例如:

age >= 18 and has_ticket
score >= 60 or is_makeup_exam
not is_login

逻辑表达式经常作为 if 的条件。

score = 85
attendance = 90

if score >= 60 and attendance >= 80:
    print("可以通过课程")
else:
    print("不能通过课程")

十二、成员运算符

成员运算符用于判断一个值是否在某个序列中。

常见成员运算符:

运算符 含义
in 在里面
not in 不在里面

这里的序列可以是字符串、列表、元组等。


1. 在字符串中使用 in

text = "hello python"

print("python" in text)
print("java" in text)

输出:

True
False

可以用于简单关键词判断:

message = "我正在学习 Python"

if "Python" in message:
    print("这句话和 Python 有关")

2. 在列表中使用 in

students = ["小明", "小红", "小刚"]

print("小明" in students)
print("小李" in students)

输出:

True
False

用于判断用户输入是否在允许范围内:

level = input("请输入等级 A/B/C:")

if level in ["A", "B", "C"]:
    print("等级有效")
else:
    print("等级无效")

3. not in

not in 表示“不在里面”。

forbidden_names = ["admin", "root"]

username = input("请输入用户名:")

if username not in forbidden_names:
    print("用户名可以使用")
else:
    print("用户名不能使用")

十三、身份运算符

身份运算符用于判断两个变量是否引用同一个对象。

常见身份运算符:

运算符 含义
is 是同一个对象
is not 不是同一个对象

初学时可以简单理解:

  • == 判断值是否相等。
  • is 判断是否是同一个对象。

例子:

a = [1, 2, 3]
b = [1, 2, 3]
c = a

print(a == b)
print(a is b)
print(a is c)

输出通常是:

True
False
True

解释:

  • a == bTrue,因为两个列表的内容相同。
  • a is bFalse,因为它们是两个不同的列表对象。
  • a is cTrue,因为 c 引用的就是 a 指向的那个列表。

初学阶段需要重点记住:

判断两个值是否相等,一般使用 ==,不要随便用 is

常见用法是判断是否为 None

result = None

if result is None:
    print("没有结果")

十四、位运算符

位运算符用于对整数的二进制位进行运算。

这部分在 Python 基础入门阶段不是最常用内容,可以作为了解。

常见位运算符:

运算符 名称
& 按位与
` ` 按位或
^ 按位异或
~ 按位取反
<< 左移
>> 右移

例子:

print(5 & 3)
print(5 | 3)

可以把整数先想象成二进制:

5 的二进制是 101
3 的二进制是 011

按位与 &

101
011
---
001

结果是二进制 001,也就是十进制 1

对于初学者,不需要一开始掌握复杂位运算,只要知道它是“对二进制位进行操作”的运算符即可。


十五、运算符优先级

当一个表达式中有多个运算符时,Python 会按照一定顺序计算。

这就是运算符优先级。

比如:

result = 2 + 3 * 4
print(result)

输出:

14

因为乘法 * 的优先级高于加法 +,所以先算:

3 * 4 = 12

再算:

2 + 12 = 14

如果想先算加法,可以使用小括号:

result = (2 + 3) * 4
print(result)

输出:

20

十六、常见运算符优先级顺序

下面列出初学阶段常见的优先级,从高到低:

优先级 运算符 说明
() 小括号
** 幂运算
+x-x 正号、负号
*///% 乘、除、整除、取余
+- 加、减
><>=<===!= 比较
not 逻辑非
and 逻辑与
or 逻辑或

不建议让初学者死记整张优先级表。

更实用的建议是:

如果不确定先算谁,就加小括号。

例子:

if (score >= 60) and (attendance >= 80):
    print("通过")

虽然这里不加括号也能运行,但加括号后更容易读懂。


十七、表达式的求值过程

表达式求值,就是 Python 计算表达式结果的过程。

例子:

result = (10 + 5) * 2 > 20

可以分步骤理解:

  1. 先算小括号:10 + 5,结果是 15
  2. 再算乘法:15 * 2,结果是 30
  3. 再进行比较:30 > 20,结果是 True
  4. 最后把 True 赋值给变量 result

所以:

print(result)

输出:

True

教学时可以让学生把复杂表达式一步一步拆开,这样更容易理解。


十八、短路运算

逻辑运算符 andor 有一个重要特点:短路运算。

短路运算指的是:

当 Python 已经能确定整个表达式结果时,就不会继续计算后面的部分。


1. and 的短路

and 要求左右都为真,结果才为真。

如果左边已经是 False,整个表达式一定是 False,右边就不需要再计算。

age = 15

if age >= 18 and input("请输入验证码:") == "1234":
    print("验证通过")
else:
    print("验证失败")

这里 age >= 18False,所以 Python 不会再执行右边的 input()

因为无论右边是真是假,整个 and 表达式都已经不可能为 True


2. or 的短路

or 只要求有一个条件为真,结果就为真。

如果左边已经是 True,整个表达式一定是 True,右边就不需要再计算。

is_admin = True

if is_admin or input("请输入邀请码:") == "8888":
    print("可以进入")
else:
    print("不能进入")

这里 is_adminTrue,所以 Python 不会再执行右边的 input()

短路运算在实际开发中很常见,但初学阶段只需要知道:

andor 不一定会计算所有条件。


十九、常见表达式类型

1. 字面量表达式

一个单独的值也可以是表达式。

10
"Python"
True

它们本身就能得到一个结果。


2. 变量表达式

一个变量也可以是表达式。

age
name
score

变量表达式的结果就是变量当前保存的值。


3. 算术表达式

price * count
(a + b) / 2

结果通常是数字。


4. 比较表达式

age >= 18
score == 100

结果是 TrueFalse


5. 逻辑表达式

age >= 18 and has_ticket
score >= 60 or is_makeup_exam

结果也是 TrueFalse


6. 函数调用表达式

函数调用也可以是表达式,因为它可能返回一个结果。

len("Python")
int("123")
input("请输入姓名:")

例子:

length = len("Python")
print(length)

输出:

6

这里 len("Python") 是表达式,它的结果是 6


二十、语句和表达式的区别

初学者有时会混淆表达式和语句。

可以这样简单区分:

  • 表达式:能算出一个结果。
  • 语句:完成一个操作。

例如:

10 + 20

这是表达式,结果是 30

x = 10 + 20

这是赋值语句,它把表达式 10 + 20 的结果赋值给变量 x

if x > 10:
    print("大于 10")

这是条件语句,用来控制程序执行流程。

在教学中,不需要一开始讲得过于抽象,可以先让学生记住:

表达式通常能放在 print() 里面输出,因为它能算出一个值。

例如:

print(10 + 20)
print(age >= 18)
print(len("Python"))

二十一、不同类型之间的运算

Python 对不同数据类型之间的运算有一定规则。

1. 整数和浮点数运算

整数和浮点数可以一起做算术运算,结果通常是浮点数。

print(10 + 3.5)
print(10 * 2.0)

输出:

13.5
20.0

2. 字符串和字符串可以相加

print("Hello" + "Python")

输出:

HelloPython

如果想中间有空格:

print("Hello" + " " + "Python")

输出:

Hello Python

3. 字符串和数字不能直接相加

错误示例:

age = 18
print("年龄:" + age)

这会报错,因为字符串不能和整数直接拼接。

正确写法:

age = 18
print("年龄:" + str(age))

更推荐:

age = 18
print(f"年龄:{age}")

4. 字符串可以和整数相乘

print("Hi" * 3)

输出:

HiHiHi

但字符串不能和字符串相乘。

错误示例:

print("Hi" * "3")

如果数字来自 input(),要先转换:

times = int(input("请输入重复次数:"))
print("Hi" * times)

二十二、运算符使用中的常见错误

1. 把 = 和 == 混淆

错误示例:

age = 18

if age = 18:
    print("年龄是 18")

问题:

if 条件中应该使用比较运算符 ==,不能使用赋值运算符 =

正确写法:

age = 18

if age == 18:
    print("年龄是 18")

2. 忘记 input() 的结果是字符串

错误示例:

a = input("请输入第一个数:")
b = input("请输入第二个数:")

print(a + b)

用户输入:

10
20

输出:

1020

原因:

input() 得到的是字符串,+ 在字符串之间表示拼接。

正确写法:

a = int(input("请输入第一个数:"))
b = int(input("请输入第二个数:"))

print(a + b)

输出:

30

3. 除数为 0

错误示例:

print(10 / 0)

程序会报错,因为数学中不能除以 0。

可以在计算前判断:

b = int(input("请输入除数:"))

if b != 0:
    print(10 / b)
else:
    print("除数不能为 0")

4. 误以为 // 是四舍五入

print(5 // 2)

输出:

2

// 是整除,不是四舍五入。

如果要四舍五入,可以使用 round()

print(round(5 / 2))

输出:

2

再如:

print(round(7 / 2))

输出:

4

5. 逻辑条件写错

错误示例:

score = 85

if score >= 60 or score <= 100:
    print("成绩有效")

这段代码看起来像是判断成绩是否在 60 到 100 之间,但逻辑有问题。

因为很多数字都会满足其中一个条件。

比如 score = 150 时:

score >= 60

True,所以整个 or 表达式也是 True

正确写法:

score = 85

if score >= 60 and score <= 100:
    print("成绩有效")

也可以写成:

if 60 <= score <= 100:
    print("成绩有效")

6. 运算顺序理解错误

result = 2 + 3 * 4

结果是 14,不是 20

如果想先算加法,要写:

result = (2 + 3) * 4

建议学生:

不确定优先级时就加括号。


7. 用 is 判断普通值是否相等

不推荐:

a = 1000
b = 1000

if a is b:
    print("相等")

普通值相等判断应使用 ==

推荐:

a = 1000
b = 1000

if a == b:
    print("相等")

is 通常用于判断是否是 None

if result is None:
    print("没有结果")

二十三、教学中可以这样讲

可以用生活中的例子解释:

运算符像数学符号和判断词。

  • + 表示加。
  • - 表示减。
  • > 表示大于。
  • and 表示并且。
  • or 表示或者。
  • in 表示在不在某个范围里。

表达式就像一句“可以得出结果的话”。

例如:

price * count

这句话能算出总价。

score >= 60

这句话能判断是否及格。

age >= 18 and has_ticket

这句话能判断是否满足入场条件。

可以把表达式的结果分为两大类:

  • 算出一个数,例如 10 + 20 的结果是 30
  • 判断真假,例如 score >= 60 的结果是 TrueFalse

二十四、课堂综合示例

示例:学生成绩判断程序

name = input("请输入学生姓名:")
score = float(input("请输入学生成绩:"))
attendance = float(input("请输入出勤率:"))

if 0 <= score <= 100 and 0 <= attendance <= 100:
    if score >= 60 and attendance >= 80:
        print(f"{name}通过课程")
    else:
        print(f"{name}没有通过课程")
else:
    print("成绩或出勤率输入无效")

这段代码中包含:

  • 赋值运算符:=
  • 比较运算符:<=>=
  • 逻辑运算符:and
  • 链式比较:0 <= score <= 100
  • 表达式:score >= 60 and attendance >= 80
  • 格式化输出:f"{name}通过课程"

可以带学生一步一步分析:

  1. 输入姓名、成绩、出勤率。
  2. 判断成绩和出勤率是否在有效范围内。
  3. 如果有效,再判断是否达到通过条件。
  4. 输出最终结果。

二十五、课堂练习

练习 1:计算商品总价

请让用户输入商品单价和购买数量,计算总价。

参考答案:

price = float(input("请输入商品单价:"))
count = int(input("请输入购买数量:"))

total = price * count

print(f"商品总价是{total:.2f}元")

练习 2:判断奇偶数

请让用户输入一个整数,判断它是奇数还是偶数。

参考答案:

number = int(input("请输入一个整数:"))

if number % 2 == 0:
    print("偶数")
else:
    print("奇数")

练习 3:判断成绩是否有效

请让用户输入成绩,判断成绩是否在 0 到 100 之间。

参考答案:

score = float(input("请输入成绩:"))

if 0 <= score <= 100:
    print("成绩有效")
else:
    print("成绩无效")

练习 4:判断是否可以入场

入场条件:

  • 年龄大于等于 18。
  • 并且有门票。

请写程序判断用户是否可以入场。

参考答案:

age = int(input("请输入年龄:"))
has_ticket = input("是否有门票?请输入 yes 或 no:")

if age >= 18 and has_ticket == "yes":
    print("可以入场")
else:
    print("不能入场")

练习 5:判断用户名是否合法

禁止使用的用户名有:

["admin", "root", "test"]

请判断用户输入的用户名是否可以使用。

参考答案:

forbidden_names = ["admin", "root", "test"]

username = input("请输入用户名:")

if username not in forbidden_names:
    print("用户名可以使用")
else:
    print("用户名不能使用")

练习 6:分析表达式结果

请判断下面表达式的结果。

print(2 + 3 * 4)
print((2 + 3) * 4)
print(10 // 3)
print(10 % 3)
print(5 > 3 and 2 > 4)
print(5 > 3 or 2 > 4)

参考答案:

14
20
3
1
False
True

练习 7:修正错误代码

下面代码有什么问题?请改正。

age = input("请输入年龄:")

if age >= 18:
    print("已成年")
else:
    print("未成年")

参考答案:

问题是 input() 得到的是字符串,不能直接和整数 18 比较。

正确写法:

age = int(input("请输入年龄:"))

if age >= 18:
    print("已成年")
else:
    print("未成年")

练习 8:使用复合赋值计算总和

请使用循环和 += 计算 1 到 100 的和。

参考答案:

total = 0

for number in range(1, 101):
    total += number

print(total)

输出:

5050

二十六、常见错误对照表

错误现象 常见原因 修改方法
if age = 18: 报错 把赋值 = 当成比较 == 条件判断中使用 ==
输入 1020 得到 1020 input() 得到字符串,+ 变成拼接 使用 int()float() 转换
除法结果是 5.0 / 的结果通常是浮点数 如果需要整数结果,按情况使用 //
5 // 2 得到 2 // 是整除,不是四舍五入 四舍五入可使用 round()
条件判断范围错误 andor 用错 范围判断通常用 and 或链式比较
字符串和数字相加报错 类型不同不能直接用 + 拼接 使用 str() 或 f-string
is 判断两个普通值 混淆了值相等和对象相同 普通相等判断使用 ==
表达式结果和预期不同 没有注意运算符优先级 使用小括号明确计算顺序

二十七、总结

运算符是 Python 中用来计算、赋值、比较和判断的符号或关键字。

表达式是能够计算出一个结果的代码。

本节需要重点掌握:

  1. 算术运算符用于数学计算,例如 +-*///%**
  2. 赋值运算符用于给变量保存数据,例如 =+=-=
  3. 比较运算符用于比较两个值,结果是 TrueFalse
  4. 逻辑运算符用于组合多个条件,包括 andornot
  5. 成员运算符用于判断某个值是否在序列中,包括 innot in
  6. 运算符有优先级,不确定时可以使用小括号。
  7. input() 得到的是字符串,参与数学运算前要转换类型。
  8. = 是赋值,== 才是判断相等。

教学时可以让学生记住一句话:

运算符负责“怎么算、怎么比、怎么判断”,表达式负责“算出一个结果”。

学好运算符和表达式以后,学生就能更自然地学习条件判断、循环、函数和数据处理。

0
博主关闭了当前页面的评论