码迷,mamicode.com
首页 > 编程语言 > 详细

Python基础(4) 控制结构

时间:2020-02-09 16:21:56      阅读:68      评论:0      收藏:0      [点我收藏+]

标签:生成式   项目   实现   new   range   mes   打印   print   john   

  三种控制流语句:ifforwhilePython用缩进表明成块的代码,以四个空格表示隶属关系,所以语句不能随意缩进。

1 条件语句

  (1)简单的if语句

a = 10
if a > 0:   # 末尾带“:”
    print(这是一个整数)     # 四个空格缩进表示隶属关系

  (2)if...else:二选一,适用于“非黑即白”的判断,只有一个输出

person = [1, 0]     # 0-男性 1-女性
if person[0] == 0:
    print(这是男性!)
else:
    print(这是女性!)

  (3)if...elif...else:多选一,多个条件相互独立,只有一个输出 

a, b = 10, 5
if a < b:   # 首次判断不满足,跳过
    print(a 小于 b)
elif a == b:    # 再次判断不满足,跳过
    print(a 等于 b)
else:   # 因比较只有:大于、等于、小于三种情况,排除两种后只剩大于,直接输出
    print(a 大于 b)     # a 大于 b

  (4)if的嵌套使用:多用于数值/多条件判断,可有多个输出

a = input(a: )
b = input(b: )
c = input(c: )
if a > b:
    print(a, 大于, b)
    if a > c:
        print(a, 大于, c)
    else:
        print(a, 小于, c) 

2 循环语句

  在符合条件的情况下,重复执行一段代码。

  2.1 while循环

  (1)简单while循环:单线重复

a = 0
while a < 100:
    a += 1  # 改变循环条件
    print(a)

  (2)嵌套while循环:多线重复,常用于行列输出

i = 0
while i < 5:    # 纵向打印
    m = 0
    while m < i:    # 横向打印
        print(*, end= )
        m += 1      # 改变循环条件
    i += 1      # 改变循环条件
    print( )
# * 
# * * 
# * * * 
# * * * *

  (3)while...else...类似与if...else...实际很少用,了解即可

  2.2 for循环

  可以循环遍历任何序列项目,如列表或字符串(字典只能遍历keys),不需要判断条件,遍历完序列中的项目即结束

a = [4, 3, 8, 9, 6, 1]
for i in a:     # 打印列表元素
    print(i)

  注意与while循环的区别

i = 0
while i < len(a):   # 必须定义并改变循环条件
    print(a[i])     # 通过索引下标输出
    i += 1  

  因为迭代(循环)某范围的数字非常常见,所以有个内建的范围函数range( )

for i in range(10):
    print(i)

  轻量级循环(列表生成式):通过简单语句实现

print([x*x for x in range(10)])     # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

  2.3 相关函数

  (1)enumerater( ):每次循环中同时得到下标和元素

animal = [Duck, Cat, Chicken, Dog, Bird]
for index, num in enumerate(animal):
    print(index)
    print(num)

# 0
# Duck
# 1
# Cat
# 2
# Chicken
# 3
# Dog
# 4
# Bird

  (2)zip( ):实现每次循环时从多个等长序列中同时取出一个元素

ta = [1, 2, 3]
tb = [7, 8, 9]
tc = [a, b, c]
for a, b, c in zip(ta, tb, tc):
    print(a, b, c)
# 1 7 a # 2 8 b # 3 9 c

  2.4 中断循环

  (1)break:退出循环

  (2)continue:退出本次循环,直至不满足遍历条件终止循环

name = input(请输入犯人名字:)
person = [Jack, Tom, John, Susan]
for se in person:
    if se == name:
        print(嫌疑人是:%s % se)
        break   # 退出整个循环,不会输出“end”
        # continue
print(se)
‘‘‘ break:运行至找到犯人为止,退出整个循环 请输入犯人名字:Tom 嫌疑人是:Tom Tom continue:找到后退出当前循环,从下次继续执行整个循环直至不满足循环条件 请输入犯人名字:Tom 嫌疑人是:Tom Susan ‘‘‘  

Python基础(4) 控制结构

标签:生成式   项目   实现   new   range   mes   打印   print   john   

原文地址:https://www.cnblogs.com/wisefaith/p/12287387.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!