Python分支循环:if elif for while

我爱学python · · 1156 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

Python中一个缩进代表一个层级,推荐4个空格

分支与循环

条件是分支与循环中最为核心的点,解决的问题场景是不同的问题有不同的处理逻辑。当满足单个或者多个条件或者不满足条件进入分支和循环,这里也就说明这个对相同问题处理执行逻辑依据具体参数动态变化,由此产生多种可能性,但要求其中一个可能性必须执行其他可能性不需要执行时候使用分支。

循环的核心是边界值,通过控制边界值控制循环的执行次数,循环体中逻辑是重复执行直至到达边界值,跳出循环。

在Python中分支和循环不能形成作用域,在其他如Golang语言中分支和循环会形成一个作用域。Python中没有 ++ -- 自增自减这个运算符,并且for循环是用来遍历可迭代数据。

分支与循环规范:

不推荐在分支和循环下写大量逻辑代码,封装成函数或者写少量几行代码

分支 - if elif

number = 10
 
if number >= 100:
    print("Hai")
elif 50 <= number < 100:
    print("Hello")
else:
    print("OK")

循环 -for

students = ["QiNiuYun", "BaiDu", "WeiChat", "AliYun"]
for student in students:
    print(student)

循环-while

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
start = 0
while start <= 100:
    print(start)
    start += 1

循环流程控制

contine到此重新开始循环,也就是从contine这一行后面循环体的都不再执行,重新开始判断条件进入循环体

start = 0
while start < 100:
    start += 1
    if start % 2 == 0:
        continue
    print(start)

break到此结束整个循环,也就是从break这一行执行之后,将跳出循环的循环体执行,执行循环结构体后面的逻辑

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
start = 0
while start < 100:
    start += 1
    if start > 50:
        break
    print(start)

break 和 contine一般联合 分支进行特殊情况下对循环体流程控制

for循环一般联合 in 进行可迭代对象的变量

可迭代对象如 str list tuple set dict range emumerate __ getitem__

遍历 str

name = "beimenchuixue"
 
for rune in name:
    print(rune)  

遍历 list

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
names = ["QiNiuYun", "BeiMenChuiXue", "AliYun", "BaiDu"]
 
for name in names:
    print(name)

遍历 tupe

platforms = ("Linux", "MAC", "Windows", "Android", "IOS")
 
for platform in platforms:
    print(platform)

遍历 set

languages = {"zh_CN", "en_US"}
for language in languages:
    print(language)

遍历字典 dict

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
info = {"name": "BeiMenChuiXue", "age": 18, "sex": "male", "phone_number": "15570910000"}
 
for key in info:
    # 在字典的遍历中,只能获取字典的key值
    print(key, info[key])

遍历 range

for number in range(1, 100, 2):
    # 从1开始到100,但不包括100,间隔步长为2
    print(number)

遍历 emumerate

names = ["QiNiuYun", "BeiMenChuiXue", "AliYun", "BaiDu"]
 
for name in enumerate(names):
    # emumerate 索引从0开始计数,返回一个由索引和值组成的元组
    print(name)

遍历 __ gettiem__

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
class Class(object):
    def __init__(self, student_names):
        self.student_names = student_names
 
    def __getitem__(self, item):
        return self.student_names[item]
 
 
python_class = Class(["QiNiuYun", "BeiMenChuiXue", "AliYun", "BaiDu"])
 
for python_student in python_class:
    # for循环会去找 __getitem__魔法方法,每次从 0 开始步长为1向 __getitem__传递 参数
    # 如果 __getitem__触发异常,for会处理异常并退出循环
    print(python_student)

使用字典实现Go语言中的 switch

def connect():
    print("connect")
 
 
def conn():
    print("conn")
 
 
def default_conn():
    print("default_conn")
 
 
interface = {"connect": connect, "conn": conn}
interface.get("conn", default_conn)()
interface.get("", default_conn)()

有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:我爱学python

查看原文:Python分支循环:if elif for while

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1156 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传