分支循环语句

这篇笔记我们介绍Python中的分支和循环语句。

if...elif...else...判断

下面代码中,我们通过if语句判断用户输入的数字是否等于5,如果等于5则输出Right!!!,否则输出Too lowToo high

guess: int = int(input('Enter your number: '))
if guess < 5:
    print('Too low')
elif guess > 5:
    print('Too high')
else:
    print('Right!!!')

Python的if语句除了支持布尔类型,也会对0、空字符串、空列表、None等值进行判断,如果这些值被当作条件,也会被当作False,它可以用来简化这些零值或空值的判断写法。当然,很多人认为这是个非常糟糕的设计,因为这种写法很容易让人迷惑。

data = 'hi'
if data:
    print('Not empty!')

如果某个分支什么都不做,我们可以使用pass关键字,它代表一个空操作。

i: int = 1
if i == 1:
    pass

match...case...判断

Python中除了if语句我们还可以使用match...case...语句进行分支条件判断,下面是一个例子。

animal: str = input('Enter animal name: ')
match animal:
    case 'cat':
        print('Meow~')
    case 'dog':
        print('Bark! Bark!')
    case 'cow':
        print('Moo~')
    case _:
        print('Invalid animal')

Python的match...case...语句类似其它语言的switch...case...语句,但是我们不必写break

for循环

for循环可以直接迭代一个可迭代对象。

for item in ['Apple', 'Orange', 'Banana']:
    print(item)

循环中,我们可以使用break中断循环,也可以使用continue跳过本次循环。

for item in ['Apple', 'Orange', 'Banana']:
    if item == 'Apple':
        break
    print(item)
for item in ['Apple', 'Orange', 'Banana']:
    if item == 'Apple':
        continue
    print(item)

此外,我们也可以配合range()循环指定次数,例如range(0, 3)实际上会返回一个可迭代对象,值为[0, 1, 2]。下面代码中,我们循环了3次,每次循环打印一个数字。

for i in range(0, 3):
    print(i)

while循环

Python也支持while循环,当while后面的条件为True时,循环会一直执行下去,直到条件为False

i: int = 3
while i > 0:
    print(i)
    i -= 1

while循环也支持breakcontinue

作者:Gacfox
版权声明:本网站为非盈利性质,文章如非特殊说明均为原创,版权遵循知识共享协议CC BY-NC-ND 4.0进行授权,转载必须署名,禁止用于商业目的或演绎修改后转载。