![Python 3程序设计基础](https://wfqqreader-1252317822.image.myqcloud.com/cover/971/33892971/b_33892971.jpg)
2.3 运算符
Python运算符包括算术运算符、关系运算符、逻辑运算符、字符串运算符等。
2.3.1 算术运算符
算术运算符如表2-4所示。
表2-4 算术运算符
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/27_03.jpg?sign=1738953341-XMV8DVubvqc925vKXbNj8An8VQoVHX1P-0-37f88cdeb739c48cf7b5ab164d28060d)
运算符的使用和运算数的数据类型关系很大,加法运行效果如图2-4所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/28_01.jpg?sign=1738953341-kdZVOAkAQN4GaodrUWLJdXE9HxdhDiTh-0-8ffb6e73353b763d573bfcfd9082c8e9)
图2-4 加法运行效果
【例2-5】 算术运算符举例。
下面给出除法(/),整除(//),求余数(%)的运行效果如图2-5所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/28_02.jpg?sign=1738953341-0YEAepbgluxO1A8iF0ng3Wyf8EBDXAZj-0-96ba38a3376b2efe610c6ad4210ea9eb)
图2-5 除法(/),整除(//),求余数(%)的运行效果
2.3.2 关系运算符
关系运算符又称比较运算符,是双目运算符,作用是将两个操作数的大小进行比较,比较的结果是一个布尔值,即True(真)或False(假)。操作数可以是数值型或字符型。表2-5列出了Python中的关系运算符。
表2-5 关系运算符
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/28_03.jpg?sign=1738953341-VhMtPcc12oMjQiMTYx49LlUUdnxpYiUw-0-65e0f5f7c1c1fc4ad7d7123585b6c1d8)
关系运算符在进行比较时,需注意以下规则:
1)若两个操作数是数字,则按大小进行比较。需要注意的是,Python的“==”是等于号,“!=”是不等于号。如图2-6所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/29_01.jpg?sign=1738953341-fulGUMvQMsfQ7EALJThfDQQts52APuGf-0-4f39e138c234fef72cf68cd5a59b4b71)
图2-6 操作数为数字的运行效果
2)若两个操作数是字符串,则按字符的ASCII码值从左到右逐一进行比较,即首先比较两个字符串中的第1个字符,ASCII码值大的字符串为大,如果第一个字符相同,则比较第2个字符,以此类推,直到出现不同的字符时为止。如图2-7所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/29_02.jpg?sign=1738953341-8b1OapnsCbQV8LZsoP8v2c0nvvEBXOxy-0-1549b7ac12a39d7fa9f800f7c5d4b861)
图2-7 操作数为字符串的运行效果
2.3.3 赋值运算符
赋值运算符如表2-6所示。
表2-6 赋值运算符
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/29_03.jpg?sign=1738953341-SEdY2AMllJy673nQdv9l9dNbz6Y6cT9l-0-27d2613ba164009c9dbea0d0f1b3b2a2)
【例2-6】 赋值运算符举例。
赋值运算符举例如图2-8所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/30_01.jpg?sign=1738953341-Dtfv3AZ2CgpbqgsQrsSMYGZcdNZy5lBK-0-62c4511cc7783cef3ba6944921b27a44)
图2-8 赋值运算符举例
2.3.4 逻辑运算符
逻辑运算符如表2-7所示。除Not是单目运算符外,其余都是双目运算符,逻辑运算结果是布尔值True或False。
表2-7 逻辑运算符
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/30_02.jpg?sign=1738953341-JJj2Kj2pSSvexrwkrL6WJZVY240GPyio-0-36a190f4a179e41ebb393727e9a07745)
【例2-7】 逻辑运算符举例。
逻辑运算符举例如图2-9所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/30_03.jpg?sign=1738953341-xHMyYdZQaBBwAfNfo4toLrZK7bpWXJZ9-0-31311e6e03f47503039398a266d1bc67)
图2-9 逻辑运算符举例
注意:False不能写成F、false等。
2.3.5 位运算符
按位运算就是把数字转换为二进制数字来运算。Python中的位运算符有:左移运算符(<<),右移运算符(>>),按位与(&),按位或(|),按位翻转(~)。位运算符如表2-8所示。
表2-8 位运算符
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/31_01.jpg?sign=1738953341-hkS5ZdswhWnA3jroDFNzg9PVwufrgbyS-0-c427f20c633acffea05da978711e4165)
【例2-8】 位运算符举例。
位运算符举例如图2-10所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/31_02.jpg?sign=1738953341-5QQtASjWyBPcjwmGMQxbQRFJR0tsTL4E-0-24968d32893f9a1610c0b7b44e9d8db4)
图2-10 位运算符举例
2.3.6 成员运算符
成员运算符主要用于字符串,列表或元组等数据类型。如表2-9所示。
表2-9 成员运算符
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/31_03.jpg?sign=1738953341-ssHniu1wRgF0PQSJViILdLZC1lQ0506l-0-53f5286142e937d323b0899bfd942132)
【例2-9】 成员运算符举例。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/31_04.jpg?sign=1738953341-KBY2qIOO0ckTigkDO9nmtnw69GogG9OO-0-30ab802b924b81dd39a9cf8fbad3bcc0)
2.3.7 身份运算符
身份运算符又名同一运算符,用于比较两个对象的存储单元。如表2-10所示。
表2-10 身份运算符
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/32_01.jpg?sign=1738953341-TLEyg9z6Kr1WNDLm20wXxj8QXgT5T4pl-0-ef19962d387e3d05016322a5e923fa00)
【例2-10】 身份运算符举例。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/32_02.jpg?sign=1738953341-3vBbzq5tBNS84ZCTnNqd6k2Hge9Q3I7C-0-c228574b01ef1abe609e343628ee98d9)