Python从入门到精通系列(初级阶段)——3.运算符

Python中常见的运算符包括算术运算符、赋值运算符、比较运算符、逻辑运算符、位运算符、成员运算符和身份运算符。下面我们详细讲解这些运算符。

算术运算符

算术运算符是 Python 中的基本运算符之一,主要用于执行数学运算。下面是 Python 中的算术运算符及其用法:

  • 加法运算符 (+)

用于将两个值相加。如果是两个数字,则执行加法运算;如果是两个字符串,则执行字符串拼接操作。示例:

# 加法运算
a = 10 + 20
b = 'hello ' + 'world'
print(a)  # 输出:30
print(b)  # 输出:hello world

  • 减法运算符 (-)

用于将第一个值减去第二个值。如果是两个数字,则执行减法运算。示例:

# 减法运算
a = 20 - 10
print(a)  # 输出:10
  • 乘法运算符 (*)

用于将两个值相乘。如果是两个数字,则执行乘法运算;如果是一个数字和一个字符串,则字符串重复指定次数。示例:

# 乘法运算
a = 2 * 3
b = 'hello' * 3
print(a)  # 输出:6
print(b)  # 输出:hellohellohello

  • 除法运算符 (/)

用于将第一个值除以第二个值,得到的结果为浮点数。示例:

# 除法运算
a = 10 / 3
print(a)  # 输出:3.3333333333333335

  • 整除运算符 (//)

用于将第一个值除以第二个值,得到的结果为整数。示例:

# 整除运算
a = 10 // 3
print(a)  # 输出:3

  • 取模运算符 (%)

用于求两个数相除的余数。示例:

# 取模运算
a = 10 % 3
print(a)  # 输出:1

  • 幂运算符 (**)

用于求一个数的幂次方,第一个参数为底数,第二个参数为指数。示例:

# 幂运算
a = 2 ** 3
print(a)  # 输出:8

总之,算术运算符是 Python 中最基本、最常用的运算符之一,应用非常广泛。

赋值运算符

赋值运算符用于将值赋给变量。常见的赋值运算符有以下几种:

  • =: 简单赋值运算符,将右边的值赋给左边的变量。
  • +=:加法赋值运算符,相当于 a = a + b
  • -=: 减法赋值运算符,相当于 a = a - b
  • *=: 乘法赋值运算符,相当于 a = a * b
  • /=: 除法赋值运算符,相当于 a = a / b
  • //=: 整除赋值运算符,相当于 a = a // b
  • %=:取模赋值运算符,相当于 a = a % b
  • **=:幂运算赋值运算符,相当于 a = a ** b

下面是一些示例:

# 简单赋值运算符
x = 10
y = x
print(y)  # 10

# 加法赋值运算符
a = 5
b = 3
a += b
print(a)  # 8

# 乘法赋值运算符
c = 2
d = 3
c *= d
print(c)  # 6

# 取模赋值运算符
e = 10
f = 3
e %= f
print(e)  # 1

需要注意的是,赋值运算符的优先级较低。因此,在进行复合运算时,请使用括号将运算的部分括起来,以确保代码按照预期的顺序执行。

比较运算符

比较运算符用于比较两个值之间的关系,通常返回布尔值True或False。

Python中的比较运算符:

  • ==:等于,比较两个值是否相等
  • !=:不等于,比较两个值是否不相等
  • <:小于,判断左侧值是否小于右侧值
  • :大于,判断左侧值是否大于右侧值

  • <=:小于等于,判断左侧值是否小于等于右侧值
  • =:大于等于,判断左侧值是否大于等于右侧值

以下是一些示例:

x = 10
y = 5

print(x == y)  # False,因为10不等于5
print(x != y)  # True,因为10不等于5
print(x < y)   # False,因为10不小于5
print(x > y)   # True,因为10大于5
print(x <= y)  # False,因为10不小于等于5
print(x >= y)  # True,因为10大于等于5

比较运算符也可以用于字符串、列表和元组等可比较的对象。

print('apple' == 'apple')  # True,因为两个字符串相等
print([1, 2, 3] != [4, 5, 6])  # True,因为两个列表不相等
print(('a', 'b') > ('c', 'd'))  # False,因为('a', 'b')小于('c', 'd')

需要注意的是,在比较不同类型的对象时,Python会按照一定的规则进行类型转换,再进行比较。例如,数字会被转换为浮点数或复数,而字符串会被转换为Unicode编码点来进行比较。

逻辑运算符

逻辑运算符是用来处理布尔类型数据的运算符,它们返回布尔类型值(True或False)。Python中的逻辑运算符包括and、or和not。下面我们来详细介绍一下这些逻辑运算符的使用方法。

  • 与运算符(and):当所有操作数都为 True 时,返回 True,否则返回 False。例如,表达式 True and False 的结果为 False,表达式 True and True 的结果为 True。

  • 或运算符(or):当至少有一个操作数为 True 时,返回 True,否则返回 False。例如,表达式 True or False 的结果为 True,表达式 False or False 的结果为 False。

  • 非运算符(not):当操作数为 True 时,返回 False,当操作数为 False 时,返回 True。

条件运算符

条件运算符,也称为三元运算符,是Python中的一种特殊形式的运算符。它只包含三个操作数:一个条件表达式、一个为真时返回的值和一个为假时返回的值。其语法为:

[on_true] if [expression] else [on_false]

其中,expression 是一个条件表达式,如果该表达式为真,则返回 on_true 的值,否则返回 on_false 的值。

下面是一个简单的示例:

a = 10
b = 20

max_num = a if a > b else b

print(max_num)   # 输出 20

在上面的示例中,如果 a 大于 b,则 max_num 被赋值为 a 的值,否则 max_num 被赋值为 b 的值。

成员运算符

Python中的成员运算符用于检查一个值是否存在于一个序列中。常见的成员运算符包括 in 和 not in。

例如,可以使用 in 运算符来检查一个值是否存在于列表中:

fruits = ['apple', 'banana', 'cherry']
if 'apple' in fruits:
    print("Yes, 'apple' is in the fruits list.")

输出:

Yes, 'apple' is in the fruits list.

同样,可以使用 not in 运算符来检查一个值是否不存在于列表中:

fruits = ['apple', 'banana', 'cherry']
if 'orange' not in fruits:
    print("Yes, 'orange' is not in the fruits list.")

输出:

Yes, 'orange' is not in the fruits list.

除了列表外,成员运算符还可以用于字符串、元组、集合、字典等序列类型。例如:

# 检查一个字符是否存在于字符串中
if 'a' in 'apple':
    print("Yes, 'a' is in the string 'apple'.")

# 检查一个键是否存在于字典中
ages = {'John': 25, 'Mary': 30, 'Peter': 20}
if 'Mary' in ages:
    print("Yes, 'Mary' is a key in the dictionary 'ages'.")

输出:

Yes, 'a' is in the string 'apple'.
Yes, 'Mary' is a key in the dictionary 'ages'.

身份运算符

身份运算符用于判断两个变量是否引用同一个对象,包括 is 和 is not 两个运算符。

具体来说,is 运算符用于判断两个变量的对象是否相同,如果相同返回 True,否则返回 False。而 is not 运算符则判断两个变量的对象是否不同,如果不同返回 True,否则返回 False。

下面是一些例子,展示了如何使用身份运算符:

x = [1, 2, 3]
y = [1, 2, 3]
z = x

print(x is y)  # False,因为 x 和 y 引用的是两个不同的对象
print(x is z)  # True,因为 x 和 z 引用的是同一个对象
print(x is not y)  # True,因为 x 和 y 引用的是两个不同的对象
print(x is not z)  # False,因为 x 和 z 引用的是同一个对象

需要注意的是,身份运算符比较的是两个变量的对象是否相同,而不是它们的值是否相同。因此,对于一些简单类型的对象(如数字、字符串等),它们的值相同,但是它们并不是同一个对象,因此使用 is 运算符比较时会返回 False。

x = 10
y = 10

print(x is y)  # True,因为 x 和 y 引用的是同一个对象

但是如果是一个大的整数对象,则可能不是同一个对象:

x = 1000000000
y = 1000000000

print(x is y)  # False,因为 x 和 y 引用的是两个不同的对象

位运算符

位运算符是一种操作二进制数字的运算符。它们按位操作数字,即将数字转换为二进制位并对每个位执行操作。在Python中,有以下位运算符:

  • 按位与:& (同时为1,则结果为1,否则为0)
  • 按位或:| (其中一个为1,则结果为1,否则为0)
  • 按位异或:^ (相同为0,不同为1)
  • 取反:~ (按位取反)
  • 左移:<< (将数字的二进制位向左移动指定的位数,并在右侧用0填充)
  • 右移:>> (将数字的二进制位向右移动指定的位数,并在左侧用0填充)

下面是一些位运算符的示例:

# 按位与
a = 0b1010
b = 0b1100
c = a & b
print(bin(c))  # 输出 0b1000

# 按位或
a = 0b1010
b = 0b1100
c = a | b
print(bin(c))  # 输出 0b1110

# 按位异或
a = 0b1010
b = 0b1100
c = a ^ b
print(bin(c))  # 输出 0b0110

# 取反
a = 0b1010
b = ~a
print(bin(b))  # 输出 -0b1011

# 左移
a = 0b1010
b = a << 2
print(bin(b))  # 输出 0b101000

# 右移
a = 0b1010
b = a >> 2
print(bin(b))  # 输出 0b10

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
关于《Python从入门到精通(第3版)pdf》,可能会存在以下几个方面的问题和答案: 1. 这本书是关于Python编程的吗? 是的,《Python从入门到精通(第3版)pdf》是一本关于Python编程语言的书籍,涵盖了从入门到精通的知识内容。 2. 这本书的作者是谁? 这本书的作者是廖雪峰,他是一位著名的IT技术专家,也是一位Python编程语言的爱好者和推广者。 3. 这本书的内容有哪些特点? 这本书的内容全面且系统,从基础的Python语法、数据类型、函数和模块等入门知识开始讲解,逐步深入到高级主题,如面向对象编程、异常处理、文件操作、数据库编程等。书中还通过大量的实例和案例来帮助读者理解和应用所学知识。 4. 这本书是否适合初学者? 是的,《Python从入门到精通(第3版)pdf》非常适合初学者。它从最基础的知识开始介绍,而且作者使用简洁明了的语言和丰富的实例,帮助读者逐步理解和掌握Python编程的基本概念和技巧。 5. 这本书是否有PDF版本? 是的,《Python从入门到精通(第3版)pdf》是有PDF版本的,读者可以通过网络下载或者购买电子版来获取。 总而言之,《Python从入门到精通(第3版)pdf》是一本非常实用且权威的Python编程入门书籍,无论是初学者还是有一定基础的读者,都可以从中获得丰富的知识和编程技巧。希望这本书对您的学习和工作有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程漫步者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值