Python的条件判断和循环、循环控制语句break和continnue

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zgcr654321/article/details/82662182

条件判断:

Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。

if 语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。

if语句的基本形式:

if 判断条件:

        执行语句……

elif 判断条件:

        执行语句......

else:

        执行语句……

其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。

如:

age = 3
if age >= 18:
    print('adult')
elif age >= 6:
    print('teenager')
else:
    print('kid')

可以有多个elif。

if判断条件还可以简写,比如写:

if x:
    print('True')

只要x是非零数值、非空字符串、非空list等,就判断为True,否则为False

注意input()输入的是str格式的数据:

如:

birth = input('birth: ')
if birth < 2000:
    print('00前')
else:
    print('00后')

当我们输入1982,结果报错:

这是因为input()返回的数据类型是strstr不能直接和整数比较,必须先把str转换成整数。

Python提供了int()函数来将str转换成整数(前提是该str可以转成对应整数,如果是字符会报错)。

s = int(input('birth: '))
if s < 2000:
    print('00前')
else:
    print('00后')

再次运行,就可以得到正确地结果。

运行截图如下:

循环:

Python提供了for循环和while循环(在Python中没有do..while循环)。

for in循环:

for x in sequence:

        statements(s)

把sequence中每个元素代入变量x,然后执行缩进块的语句。

如:for...in循环,依次把list或tuple中的每个元素打印出来:

names = ['A', 'B', 'C']
for name in names:
    print(name)

执行这段代码,会依次打印names的每一个元素:

range()函数:

Python提供一个range()函数,可以生成一个整数序列,再通过list()函数可以转换为list

如:

>>> list(range(5))
[0, 1, 2, 3, 4]

这样就生成了一个5个元素的list,且元素依次为0到4。

我们可以在for in循环中也应用range()函数来简化程序:

sum = 0
for number in range(101):
	sum = sum + number
print(sum)

这里的range直接生成了一个list,list内的值为0到100,共101个数字。

while循环:

while语句的基本形式:

while 判断条件:

        执行语句……

执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。

当判断条件假false时,循环结束。

如:

sum = 0
n = 99
while n > 0:
    sum = sum + n
    n = n - 2
print(sum)

运行截图如下:

break语句:

在循环中,break语句可以提前退出循环。

如:

n = 1
while n <= 100:
    if n > 10: # 当n = 11时,条件满足,执行break语句
        break # break语句会结束当前循环
    print(n)
    n = n + 1
print('END')

执行上面的代码,打印出1~10后,紧接着打印END,程序结束。

continue语句:

continue语句,跳过当前的这次循环,直接开始下一次循环。

如:

n = 0
while n < 10:
    n = n + 1
    if n % 2 == 0: # 如果n是偶数,执行continue语句
        continue # continue语句会直接继续下一轮循环,后续的print()语句不会执行
    print(n)

执行上面的代码,打印的是1,3,5,7,9。

break和continnue总结:

break语句可以在循环过程中直接退出循环,而continue语句可以提前结束本轮循环,并直接开始下一轮循环。这两个语句通常都必须配合if语句使用。

猜你喜欢

转载自blog.csdn.net/zgcr654321/article/details/82662182