![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=1739311389-EnoWHMf9IqV4695U97vLmO8JiCoeFF4A-0-21bc4f8c6836e57eb2f75587ecaf3587)
运算符的使用和运算数的数据类型关系很大,加法运行效果如图2-4所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/28_01.jpg?sign=1739311389-sHVvL8FgwJSMZ6W0jzYdoHqRSwhZAU56-0-3d1303adf4f568d5fc0c895cdbd3cc50)
图2-4 加法运行效果
【例2-5】 算术运算符举例。
下面给出除法(/),整除(//),求余数(%)的运行效果如图2-5所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/28_02.jpg?sign=1739311389-YFFwqFqeh7Q1giXXPK8tEzqQAh4jrPHm-0-6c0459dbc102e9b5fa521e6c1075950b)
图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=1739311389-4Jn4hRAeN1r4JsNV0h8Ur4u6Rjoxs4vH-0-41710476484901c1f3e131d681e184ed)
关系运算符在进行比较时,需注意以下规则:
1)若两个操作数是数字,则按大小进行比较。需要注意的是,Python的“==”是等于号,“!=”是不等于号。如图2-6所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/29_01.jpg?sign=1739311389-iHSJ4K2exY3ykbXx0RakfVKSw2XjrMGu-0-eda782875ca63c2492c6b690728244fb)
图2-6 操作数为数字的运行效果
2)若两个操作数是字符串,则按字符的ASCII码值从左到右逐一进行比较,即首先比较两个字符串中的第1个字符,ASCII码值大的字符串为大,如果第一个字符相同,则比较第2个字符,以此类推,直到出现不同的字符时为止。如图2-7所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/29_02.jpg?sign=1739311389-O5X1ORWHp87lp1efE4qBYSNUmS1mLFMS-0-0d00738c5f20630f2c3c01b6a45c5243)
图2-7 操作数为字符串的运行效果
2.3.3 赋值运算符
赋值运算符如表2-6所示。
表2-6 赋值运算符
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/29_03.jpg?sign=1739311389-CxTxlmS9reXptshgvHwbQ64qqMuSCVPr-0-44c23e7b2141fb1114cb836d3efbc4e7)
【例2-6】 赋值运算符举例。
赋值运算符举例如图2-8所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/30_01.jpg?sign=1739311389-FqFF582ptfiltKxlU5TLWAu3SxcmHVi7-0-276efed4e789b90034a29582891fddef)
图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=1739311389-7sdNKzRmwId3wuTw0LvyZGMtcFW9DBsX-0-e8b4cc3a5341e061d19acbc24cfb50e8)
【例2-7】 逻辑运算符举例。
逻辑运算符举例如图2-9所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/30_03.jpg?sign=1739311389-QEsgAGgigVythtebNNUa1nnC6FDdN9F4-0-c66d6d59d8859bbeae6395ea7d604d09)
图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=1739311389-MAcvrR40ciaMNbI1dkBBNvuXgqGtC9tG-0-1c958d365a04c4927f9ab1e558c1337d)
【例2-8】 位运算符举例。
位运算符举例如图2-10所示。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/31_02.jpg?sign=1739311389-kM4zD4t3FFEKMvqdMzD7ZSapCHeUnZiI-0-21026fb1481c9084c92c62ae44051f6c)
图2-10 位运算符举例
2.3.6 成员运算符
成员运算符主要用于字符串,列表或元组等数据类型。如表2-9所示。
表2-9 成员运算符
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/31_03.jpg?sign=1739311389-Uczu2g3SKh6BHi3NSBVD39n8mSxsyuaH-0-c60ad45cb5e909c39d6fd0a91811e6a9)
【例2-9】 成员运算符举例。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/31_04.jpg?sign=1739311389-jFtfsKfscUNnWpn25M5XxVBDDLl6W6ue-0-e935adfd38bf9f5542573dccc17c8c77)
2.3.7 身份运算符
身份运算符又名同一运算符,用于比较两个对象的存储单元。如表2-10所示。
表2-10 身份运算符
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/32_01.jpg?sign=1739311389-c0K1jVeWt4AHyFZJBwjfRKFel3pQWWCG-0-90002d6bff486504736224f1fa67fc99)
【例2-10】 身份运算符举例。
![](https://epubservercos.yuewen.com/1536BF/18123625601962306/epubprivate/OEBPS/Images/32_02.jpg?sign=1739311389-NlsG9T0ROOaCiGxrXXC9jAofEsiaL8lZ-0-ea9e5297707b27496ff5176d362b38d8)