![Python从入门到项目实践(超值版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/265/27563265/b_27563265.jpg)
5.3 运算符
运算符包括算术运算符、赋值运算符、比较运算符、逻辑运算符、按位运算符、成员运算符和身份运算符。
5.3.1 算术运算符
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P83_40797.jpg?sign=1739298267-w7MqShpLm4xsfAMnecZ4LH5ccGkj7bX3-0-32e5582d8cb77d4e58f26f0070d79eed)
算术运算符包括加、减、乘、除、取余、取整、幂运算。Python常见的算术运算符见表5-3。
表5-3 算术运算符
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-T83_78851.jpg?sign=1739298267-m9vqVqqVLKEPisT1MX1BEG69WceFkSYN-0-0bc22adaf6f77982730c9841c68ea1b5)
【例5-18】算术运算符及表达式举例。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P83_81685.jpg?sign=1739298267-w3rIoPe7XpwHDEgxmZvS6yaCgvNCfQj8-0-f6986ddde8cdcabb6d0c64d7eaae3c5f)
程序运行结果如图5-18所示。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P83_78848.jpg?sign=1739298267-d0Bq3HXp3bKg6ShjbM2b5MzWLMDGvH7r-0-b0853cef8689fd7ef2407331f8a37a92)
图5-18 算术运算符举例结果
5.3.2 赋值运算符
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P83_40803.jpg?sign=1739298267-ZEMjvgMbNa9SdYuQdg2yyGAGjzQFWfKj-0-2aee4ad0efd250994bd88099c0776011)
赋值运算符除了一般的赋值运算符(=)外,还包括+=、-=、*=、/=等。Python常见的赋值运算符见表5-4。
表5-4 赋值运算符
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-T84_78861.jpg?sign=1739298267-9ce3lnB6rqEnKomvzw3Qy8KBpTlADXVf-0-90d67656bd921b3aea797cbd5093e89c)
【例5-19】赋值运算符及表达式举例。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P84_81688.jpg?sign=1739298267-EZnHaY8kcFBxImdj2GCtaUcQnyU2daTC-0-d729b955038f67e6a84f0c1b46d60984)
程序运行结果如图5-19所示。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P84_78854.jpg?sign=1739298267-4tKkJNCJW6OYZrpLYSOpaFSK5oJN65Py-0-0bc557d68d096068b3d4292deefb47fb)
图5-19 赋值运算符举例结果
5.3.3 比较运算符
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P84_41086.jpg?sign=1739298267-YR4P0GVjv3dmmSoO3pCa2aaVG34AwbLR-0-83534c0228f3a1b479f85379485dfff6)
比较运算符有==、!=、>、<、>=、<=。比较运算符可以对两个数据进行比较。Python常见的比较运算符见表5-5(其中,a = 2,b = 3)。
表5-5 比较运算符
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-T84_41089.jpg?sign=1739298267-Nv2Mo26gwxdNG9Sz3EU0tKgHMbEcRpXA-0-f53905c93cfdb63881657110ffc8f74e)
【例5-20】比较运算符及表达式举例。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P85_81690.jpg?sign=1739298267-Rmcd04U0j7zKd8LFbdnE7yWyNq8leYCD-0-94fca5573c319d1f9f62322631417b1e)
程序运行结果如图5-20所示。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P85_78875.jpg?sign=1739298267-FZjNQDcIclq3RRgH8hJnVzQlttIB3ZFB-0-ac4abb02285df7b54f51482a83ff3a79)
图5-20 比较运算符举例结果
5.3.4 逻辑运算符
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P85_41396.jpg?sign=1739298267-NZXdbEMQbHF6vdPsTkBqpJjq5msGuUG9-0-5fbfa44873918d63cbe7e124d8531ecf)
逻辑运算符有and、or和not。逻辑运算符可以对两个数据逻辑运算。Python的逻辑运算符见表5-6(其中,a=10,b=10)。
表5-6 逻辑运算符
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-T85_78872.jpg?sign=1739298267-oStZIMGf1XWEyR98trKUwv1R2k6uFJwa-0-dc7360c268801943eb9eaf4312f4ad1c)
【例5-21】逻辑运算符及表达式举例。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P86_78876.jpg?sign=1739298267-VkClwe6ulRTqOLbQ4ip33MWd25CU6YWp-0-39a2f5a8be46080a797bc440eea14e35)
程序运行结果如图5-21所示。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P86_41658.jpg?sign=1739298267-NzQioEllYs7lSoau3bBEToeSNSver7St-0-8fd7f8c784f5b98356b2e2b445ee0835)
图5-21 逻辑运算符举例结果
5.3.5 按位运算符
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P86_41666.jpg?sign=1739298267-kZQMkLM3jZYm2wGKpVKOZOG0fWioFDAs-0-462dcc8eba5e7b9e68c5375a512b6a54)
按位运算符是把数字看作二进制来进行计算的。
Python的按位运算符见表5-7。表5-7中变量a为60,b为13,二进制格式如下。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P86_78877.jpg?sign=1739298267-xnTSXJL3IDEdXOTozIny7Qm8Z9MQx1CE-0-589ae3af57ca2fc9b7c7992d763ef246)
表5-7 按位运算符
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-T86_41669.jpg?sign=1739298267-c2BvVidlpqRnnHtq3M6bpjH8qlw1UbGF-0-87106e50f264d2af14f375325c15258d)
【例5-22】按位运算符及表达式举例。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P87_81694.jpg?sign=1739298267-1SnhXbzmURzUOhlJWn2vLgB64rvoNxtB-0-b9d190b64a7c5e5a95d0744a1380fcac)
程序运行结果如图5-22所示。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P87_78885.jpg?sign=1739298267-qG7ppGXl1k2piLFhInigr6XS0dyvBB56-0-1a75e92d780473c952bacd86a58d701e)
图5-22 按位运算符举例结果
5.3.6 成员运算符
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P87_41968.jpg?sign=1739298267-dLvzI78NX2300vbCJ2copJ4LC0WVXxIN-0-34190260322bcce4272c86fc36200f6e)
成员运算符有in和not in,它们可以确定一个值是否是另一个值的成员。Python的成员运算符见表5-8。
表5-8 成员运算符
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-T87_41972.jpg?sign=1739298267-7QDAEPvYYmWUVQqsJElBw0gg6Npfa5bb-0-b1f77fd820e771be7626b0c98346bedf)
【例5-23】成员运算符及表达式举例。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P87_78888.jpg?sign=1739298267-9HDqJT8cvelwbHi8OnIw4G2aSiClQqKo-0-09271857665c2fa8d8c6fcaaf5b1c086)
程序运行结果如图5-23所示。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P88_41997.jpg?sign=1739298267-jxVSz26Xjc9qO3I13fYWT4J2CX2tzZGO-0-ba07c56adb41c05c37f29218aaa3d6a4)
图5-23 成员运算符举例结果
5.3.7 身份运算符
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P88_42182.jpg?sign=1739298267-zx3qV2AM6Ki7OOSWaFSgdkDs9HtHoAcU-0-ebf321a49da3ac256bcaa6c7302adf3b)
身份运算符有is和is not。Python的身份运算符见表5-9。
表5-9 身份运算符
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-T88_42191.jpg?sign=1739298267-MdHC2T6hmEWhJTWlq6dMFkwT3HnzWIuH-0-f9eaf90188164d01305f2fe82d2a3c6b)
【例5-24】身份运算符及表达式举例。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P88_81363.jpg?sign=1739298267-32WbDjOjpUVqNUXp1zobGqUte8qXDyEO-0-43b5c6f735ce303847cd6ba80ef9bdfd)
程序运行结果如图5-24所示。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P88_42173.jpg?sign=1739298267-KPCcsvcwP9bN4HP3ILUDJsdZXnCGNVmx-0-73f2b76af0a163b3c589b08841f97200)
图5-24 身份运算符举例结果
5.3.8 Python运算符优先级
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P88_42188.jpg?sign=1739298267-DDPy0xzbP2KizZ7JdgX8JVKZbaIQ9J3l-0-adbf3208f6025ede40c634041f2c70e1)
Python有很多运算符,这些运算符的优先级顺序是什么样的呢?表5-10列出了从最高到最低优先级的所有运算符。
表5-10 Python运算符优先级
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-T89_42288.jpg?sign=1739298267-PEH5BIobiuhcPj9bIRdMeN1cwrNbneJ6-0-004679fafd7da59596ab7f1a16bf0735)