![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=1739436517-tUXaprdzEjlZaD7zKpq2XgonPsORhfdh-0-51d249e0f12621e512e25ff4412921ca)
运算符的使用和运算数的数据类型关系很大,加法运行效果如图2-4所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/28_01.jpg?sign=1739436517-m6BJqjIeAuCTQrN6oVdW5dZc4obVlNZU-0-55525969f5ee4b581da6e0f02ca5f2e5)
图2-4 加法运行效果
【例2-5】 算术运算符举例。
下面给出除法(/),整除(//),求余数(%)的运行效果如图2-5所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/28_02.jpg?sign=1739436517-0Ox9DuVGOJRgHIpHC3jF0osmcn5Q4mYp-0-43a67c4e86256bccd19bd1c6a63e0b97)
图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=1739436517-xpixWZV8OtCmFZg8TTTHnQhrIHEmx4GU-0-2f52b7e03928d4ee5239d1546e49cbd2)
关系运算符在进行比较时,需注意以下规则:
1)若两个操作数是数字,则按大小进行比较。需要注意的是,Python的“==”是等于号,“!=”是不等于号。如图2-6所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/29_01.jpg?sign=1739436517-LPzLwmtwVPXpOYOoA0DLXOTYbfrZI9QE-0-3475ae0f1cf434db38aa67468d0a8470)
图2-6 操作数为数字的运行效果
2)若两个操作数是字符串,则按字符的ASCII码值从左到右逐一进行比较,即首先比较两个字符串中的第1个字符,ASCII码值大的字符串为大,如果第一个字符相同,则比较第2个字符,以此类推,直到出现不同的字符时为止。如图2-7所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/29_02.jpg?sign=1739436517-8LDKU1vC2PJnpkSeiwn1ShzYI1RxVfie-0-5e8146c87a9706e58bf168c8e1c32d5f)
图2-7 操作数为字符串的运行效果
2.3.3 赋值运算符
赋值运算符如表2-6所示。
表2-6 赋值运算符
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/29_03.jpg?sign=1739436517-VQ6V7SLXsQfq8eejPSfVFjv9M1GysFd4-0-2233ac0c20054f4c600a57b1b71838f6)
【例2-6】 赋值运算符举例。
赋值运算符举例如图2-8所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/30_01.jpg?sign=1739436517-BCn332jksthhg2X6ddSZQPrHjdiSQUh9-0-cb4b2be726d6bc4a9789e92bb2d2dd14)
图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=1739436517-s7ox6AAO23tvgfqQtGQPs8fXsPr3XsER-0-60f4ae6dce96d3ac7c5232e57d7a4abd)
【例2-7】 逻辑运算符举例。
逻辑运算符举例如图2-9所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/30_03.jpg?sign=1739436517-kelCctlOSEnHbQL7YxZxVBVKAEi9unGe-0-2a38cd550a3c0284f485e50b313af871)
图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=1739436517-fWTTc5VInEXYU7WLdw8s5UkstIP6YcQE-0-9f43e1108384d7d33c0cb77bde2a4a84)
【例2-8】 位运算符举例。
位运算符举例如图2-10所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/31_02.jpg?sign=1739436517-ew56xScvOfBkQiTal9tBf9EDPLh56BkP-0-d634dc7f96af03886ea3994bdeda8021)
图2-10 位运算符举例
2.3.6 成员运算符
成员运算符主要用于字符串,列表或元组等数据类型。如表2-9所示。
表2-9 成员运算符
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/31_03.jpg?sign=1739436517-zlWs26HPHLFbcmzaywhGh0O0WXPXqvq1-0-64d6756d2bbdd767be9fbe68ddc370cf)
【例2-9】 成员运算符举例。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/31_04.jpg?sign=1739436517-FhHFp0oyhgpNzf7crOvHTxGB1Lo8iI24-0-429c12dd7cac0d7473d67aa90154cf79)
2.3.7 身份运算符
身份运算符又名同一运算符,用于比较两个对象的存储单元。如表2-10所示。
表2-10 身份运算符
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/32_01.jpg?sign=1739436517-wmY7iJ7s87cnc7TDSsfqeAoOjoWNmEFB-0-d585a1b476d8c2b2c6da3997d3939d17)
【例2-10】 身份运算符举例。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/32_02.jpg?sign=1739436517-p7Lw4Oj8DtNIyzLgPiQtJfjGBjh94aG3-0-a72e6aa1e649b4f73ad90602d3eaa220)