python小知识|if x、if not x、while True的用法,还在困扰着你吗?(补加:关于None的小知识)
一.条件判断语句简写
1.if x 与 if not x
- 我们说条件判断,其实就是说True和Flase。
- 首先,你要知道一件事。当 x 为 0、空列表([])、空元组(())、空字符串(’’)、空字典({})、None时, 判断为False ,其他判断为 True 。
>>> bool(0)
False
>>> bool(1)
True
>>> bool(3)
True
>>> bool('')
False
>>> bool('str')
True
>>> bool([])
False
>>> bool([1,2])
True
>>> bool(())
False
>>> bool((1,3))
True
>>> bool({})
False
>>> bool({'a':1,'b':2})
True
>>> bool(None)
False
>>> bool()
False
而 if x 和 if not x 的简单用法,则如下所示:
a = 3
# 如果,a 为True,则输出
if a:
print('奥利给——a')
if not a:
print('摸泥鳅——a')
b = ''
if b:
print('奥利给——b')
# 如果 b 为False,则输出(not b == True)
if not b:
print('摸泥鳅——b')
if x:
pass
- 如果 x 为True,则输出 。
if not x:
pass
- 如果 x 为False,则输出(not b == True) 。
2.None的小知识
- None不是 0,不是空字符串,不是空列表,不是空字典,也不是False。
- 但是,None值上虽然不是False,但是含义等同于空,bool值为False。
>>> None == False
False
>>> None == bool(())
False
>>> None == bool([])
False
>>> None == bool({})
False
>>> None == bool('')
False
>>> bool(None)
False
二.循环语句
1.while True
- while 循环在表达式为 True 的情况下会一直执行,直到表达式为 False ,停止。
- 我们将 while True 循环语句和 if not x 语句进行糅合。
# while循环在表达式为True的情况下会一直执行,直到表达式为False,停止。
# while True——if not x
c = 10
while True:
c -= 1
print(c)
if not c:
break
- 通过上面的代码我们可以看出,当 c = 0(False)时,满足 if not 条件判断,最后执行判断体系里的break 。
- 我们将 while True 循环语句和 if x 条件语句进行糅合。
# while True——if x
d = 10
while True:
d -= 1
print(d)
if d == -3:
break