正在加载...

条件视为真的值

bool 不改写已经存好的值。它只问一句:条件会不会把这个值当成真?答案是 True 或 False,也就是上一页的那两个值。它也不把文字变成数字。

一个空格也是字。bool(" ") 写出 True。引号中间坐着一个空格,这段文字不是空的,条件把它当成真。空的,只有引号中间什么都没有。

空文本本身不是值 False,可条件把它当成假。bool("") 写出 False。bool("lida") 写出 True,因为这个词里有字母。

空文本,然后 lida

python
print(bool(""))
print(bool("lida"))

第一行是 False。第二行是 True。

数字 0 不是文本 0

bool(0) 写出 False。数字 0 没有任何数量,条件把它当成假。bool("0") 写出 True。那是文字:引号中间有一个字,所以不是空的。bool(2) 写出 True。除了 0,别的数字都当成真。

数字 0,文本 0,然后 2

python
print(bool(0))
print(bool("0"))
print(bool(2))

三行依次是 False、True、True。

名字跟着它存的东西走

guest = "" 存的是空文本。bool(guest) 写出 False。后面一行 guest = "lida" 换掉它。bool(guest) 于是写出 True。要紧的不是名字。要紧的是它存着什么。

空名字,然后 lida

python
guest = ""
print(bool(guest))
guest = "lida"
print(bool(guest))

第一次写出 False。第二次写出 True。

下一页是一个表示什么都没存的值

这一页不比较两个数,不选择一条路,也不把两个条件接在一起。下一页是一个表示什么都没存的值。条件也不把它当成真。到那一页再见它,不是在这里。

这四句自己说

  1. bool 改不改已存的值?不改。它只回答 True 或 False。
  2. bool("") 写出什么?False。bool("lida") 写出什么?True。一个空格呢?True。
  3. bool(0) 写出什么?False。bool("0") 写出什么?True。bool(2) 写出什么?True。
  4. 下一页是什么?一个表示什么都没存的值。

容易读错

  • 以为 bool("") 会写出一行空白
  • 把文本 "0" 当成数字 0
  • 把一个空格当成空的
  • 以为 bool 会改掉已存的文字
  • 在这一页等着比较或选择一条路

留下这些

bool 问条件会不会把这个值当成真,并用 True 或 False 回答。
空文本和数字 0 被当成假。
lida、文本 "0"、数字 2,以及一个空格,被当成真。
后面一行可以换掉名字存的东西,bool 跟着它走。
下一页是一个表示什么都没存的值。

🧠 测试您的知识

准备开始

测试您的知识

通过这个互动测验挑战自己,看看你对这个主题的理解程度如何

❓
4
问题
🎯
70%
及格要求
♾️
∞
时间
🔄
∞
尝试次数

📝 说明

  • 仔细阅读每个问题
  • 为每个问题选择最佳答案
  • 您可以随时重新参加测验
  • 您的进度将显示在顶部