python 如何对布尔值取反

📅 发布时间:2026/7/3 22:45:53 👁️ 浏览次数:
python 如何对布尔值取反
在 Python 中对布尔值取反最直接的方法是使用逻辑运算符not。以下是详细说明和示例1. 基本用法aTruebnota# b 的值为 FalsecFalsednotc# d 的值为 True2. 非布尔值的取反当操作数是非布尔值如整数、字符串、列表等时Python 会先将其转换为布尔值通过bool()函数再取反print(not0)# 0 → False → Trueprint(not1)# 1 → True → Falseprint(not[])# 空列表 → False → Trueprint(not[1,2])# 非空列表 → True → Falseprint(not)# 空字符串 → False → Trueprint(notabc)# 非空字符串 → True → False3. 实际场景示例# 条件判断中取反is_rainingTrueifnotis_raining:print(带伞出门)# 条件不成立时不执行# 简化代码逻辑user_inputifnotuser_input:# 等价于 if user_input print(输入为空)4. 注意事项not是逻辑运算符返回值为布尔类型True或False。不要与按位取反操作符~混淆~用于整数如~1返回-2。在链式条件中not的优先级高于and和or可通过括号明确顺序notaandb# 等价于 (not a) and bnot(aandb)# 需用括号改变优先级5. 扩展自定义对象的布尔转换重写__bool__()方法可控制对象在布尔上下文中的行为classMyClass:def__bool__(self):returnFalse# 对象在布尔上下文中始终视为 FalseobjMyClass()print(notobj)# 输出 True通过not运算符你可以高效地实现逻辑反转这是 Python 中处理条件逻辑的核心操作之一。