• Python for循环


    Python的for循环

    一、for循环

    for循环:循环就是重复做某件事,for循环是python提供第二种循环机制(第一种是while循环),理论上for循环能做的事情,while循环都可以做。

    目的:之所以要有for循环,是因为for循环在循环取值(遍历取值)比while循环更简洁。

    (文末送读者福利)

    二、for循环语法如下

    for 变量名 in 可迭代对象: # 此时只需知道可迭代对象可以是字符串\列表\字典,其实也可以是tuple(),set()
    代码一
    代码二

    
    # # for循环
    # # 列表取值
    # l = ['lsj','a','b']
    # for x in l:
    #     print(x)
    lsj
    a
    b    ...
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    # 参照例1来介绍for循环的运行步骤
    # 步骤1:从列表['lsj','a','b']中读出第一个值赋值给x(x=‘lsj’),然后执行循环体代码
    # 步骤2:从列表
    ['lsj','a','b']
    
    • 1
    • 2
    • 3
    • 4

    在这里插入图片描述

    三、 for循环应用案例

    案例一:

    # 简单版:for循环的实现方式
    # l = ['lsj', 'b', 'c']  # 定义一个列表
    # for x in l:
    #     print(x)
    # lsj
    # b
    # c
    
    # 复杂版:while循环的实现方式
    l = ["lsj","b","c"]
    i = 0
    while i < 3:
        print(l[i])
        i += 1
    
    # lsj
    # b
    # c
    
    # 使用循环取出0-5的值
    # 简单版:for循环的实现方式一、
    # for count in range(6):  # range(6)会产生从0-5这6个数
    #     print(count)
    # 复杂版:while循环的实现方式
    # count = 0
    # while count < 6:
    #     print(count)
    #     count += 1
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28

    案例二:遍历字典

    # 简单版:for循环的实现方式
    dic = {'name':'lsj','age':18,'gender':'male'}
    for k in dic:  # for 循环默认取的是字典的key赋值给变量名k
        print(k,dic[k])
    # name lsj
    # age 18
    # gender male
    
    # 复杂版:while循环确实可以遍历字典,后续将会迭代器部分详细介绍
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    案例三:for循环嵌套

    #请用for循环嵌套的方式打印如下图形:
    *****
    *****
    *****
    for i in range(3):
        for j in range(5):
            print("*",end='')
        print()  # print()表示换行
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    四、总结for循环与while循环的异同

    (1)相同之处:都是循环,for循环可以干的事,while循环也可以干

    (2)不同之处:

    while循环称之为‘’条件循环‘’,循环次数取决于条件何时变为假

    for循环称之为"取值循环",循环次数取决in后包含的值的个数

    五、for循环控制循环次数:range()

    in后直接放一个数据类型来控制循环次数有局限性:

    当循环次数过多时,数据类型包含值的格式需要伴随着增加

    range功能介绍

    range(10)  # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 从0开始有头无尾
    
    range(1,10,1)  # 1 2 3 4 5 6 7 8 9 设定开始,结束,步长
    
    range(1,10,2)  # 1 3 5 7 9
    
    • 1
    • 2
    • 3
    • 4
    • 5

    range()的补充:python2与python3的不同之处。

    在python2中对range(10)的处理:一个篮子里面装有10个鸡蛋,空间较大。

    在python3中对range(10)的优化:一只可以下10个鸡蛋的母鸡,空间较小。

    for搭配range,可以按照索引取值,(比较麻烦所以不推荐)

    l = ['lsj', 'a', 'c']  # len(l)
    for i in range(len(l)):
        print(i, l[i])
    for x in l:
        print(x)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    PEP8规范写法

    for i in range(5):
        if i == 4:continue # PEP8规范不建议这样写
        print(i)
    
    for i in range(5):
        if i == 4:
            continue # PEP8规范这样写
        print(i)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    六、for循环的跳出

    for+break: 同while循环一样,只要运行到break就会立刻中止本层循环

    for+else:同while循环一样,只要运行到break就立即终止本次循环

    总结:for+break,for+continue,for+else的用法与while相同

    练习一:

    # 打印九九乘法表
    
    for i in range(1,10):
        for j in range(1,i+1):
            print('%s*%s=%s' %(i,j,i*j),end=' ')
        print()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    练习二:

    # 打印金字塔
    # 分析
    '''
    #max_level=5
         *        # current_level=1,空格数=4,*号数=1
        ***       # current_level=2,空格数=3,*号数=3
       *****      # current_level=3,空格数=2,*号数=5
      *******     # current_level=4,空格数=1,*号数=7
     *********    # current_level=5,空格数=0,*号数=9
    
    # 数学表达式
    空格数=max_level-current_level
    *号数=2*current_level-1
    '''
    # 实现:
    max_level=5
    for current_level in range(1,max_level+1):
        for i in range(max_level-current_level):
            print(' ',end='') #在一行中连续打印多个空格
        for j in range(2*current_level-1):
            print('*',end='') #在一行中连续打印多个空格
        print()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22

    一、Python入门

    下面这些内容是Python各个应用方向都必备的基础知识,想做爬虫、数据分析或者人工智能,都得先学会他们。任何高大上的东西,都是建立在原始的基础之上。打好基础,未来的路会走得更稳重。所有资料文末免费领取!!!

    包含:

    计算机基础

    在这里插入图片描述

    python基础

    在这里插入图片描述

    Python入门视频600集:

    观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

    二、Python爬虫

    爬虫作为一个热门的方向,不管是在自己兼职还是当成辅助技能提高工作效率,都是很不错的选择。

    通过爬虫技术可以将相关的内容收集起来,分析删选后得到我们真正需要的信息。

    这个信息收集分析整合的工作,可应用的范畴非常的广泛,无论是生活服务、出行旅行、金融投资、各类制造业的产品市场需求等等,都能够借助爬虫技术获取更精准有效的信息加以利用。

    在这里插入图片描述

    Python爬虫视频资料

    在这里插入图片描述

    三、数据分析

    清华大学经管学院发布的《中国经济的数字化转型:人才与就业》报告显示,2025年,数据分析人才缺口预计将达230万。

    这么大的人才缺口,数据分析俨然是一片广阔的蓝海!起薪10K真的是家常便饭。

    在这里插入图片描述

    四、数据库与ETL数仓

    企业需要定期将冷数据从业务数据库中转移出来存储到一个专门存放历史数据的仓库里面,各部门可以根据自身业务特性对外提供统一的数据服务,这个仓库就是数据仓库。

    传统的数据仓库集成处理架构是ETL,利用ETL平台的能力,E=从源数据库抽取数据,L=将数据清洗(不符合规则的数据)、转化(对表按照业务需求进行不同维度、不同颗粒度、不同业务规则计算进行统计),T=将加工好的表以增量、全量、不同时间加载到数据仓库。

    在这里插入图片描述

    五、机器学习

    机器学习就是对计算机一部分数据进行学习,然后对另外一些数据进行预测与判断。

    机器学习的核心是“使用算法解析数据,从中学习,然后对新数据做出决定或预测”。也就是说计算机利用以获取的数据得出某一模型,然后利用此模型进行预测的一种方法,这个过程跟人的学习过程有些类似,比如人获取一定的经验,可以对新问题进行预测。

    在这里插入图片描述

    机器学习资料:

    在这里插入图片描述

    六、Python高级进阶

    从基础的语法内容,到非常多深入的进阶知识点,了解编程语言设计,学完这里基本就了解了python入门到进阶的所有的知识点。

    在这里插入图片描述

    到这就基本就可以达到企业的用人要求了,如果大家还不知道去去哪找面试资料和简历模板,我这里也为大家整理了一份,真的可以说是保姆及的系统学习路线了。

    在这里插入图片描述
    但学习编程并不是一蹴而就,而是需要长期的坚持和训练。整理这份学习路线,是希望和大家共同进步,我自己也能去回顾一些技术点。不管是编程新手,还是需要进阶的有一定经验的程序员,我相信都可以从中有所收获。

    一蹴而就,而是需要长期的坚持和训练。整理这份学习路线,是希望和大家共同进步,我自己也能去回顾一些技术点。不管是编程新手,还是需要进阶的有一定经验的程序员,我相信都可以从中有所收获。

    资料领取

    上述这份完整版的Python全套学习资料已经上传网盘,朋友们如果需要可以微信扫描下方二维码 即可自动领取↓↓↓==
    或者

    点此链接】领取

    好文推荐

    了解python的前景:https://blog.csdn.net/SpringJavaMyBatis/article/details/127194835

    了解python的兼职副业:https://blog.csdn.net/SpringJavaMyBatis/article/details/127196603

  • 相关阅读:
    CDH大数据平台集群部署
    Mybatis-plus入门
    java版直播商城平台规划及常见的营销模式有哪些?
    【计算机组成原理】第一章 概论
    Nodejs中net模块多次Socket.setTimeout无法覆盖之前函数,导致叠加执行问题解决
    [nodejs]NVM使用指南
    三分钟带你了解内网穿透的什么
    CentOS开机自动登陆root用户
    【深度学习】笔记3-神经网络的学习
    [MySQL]order by失效
  • 原文地址:https://blog.csdn.net/weixin_49892805/article/details/128189241