zoukankan      html  css  js  c++  java
  • 循环——批量处理数据

    一、循环的意义

      1、我们使用循环来做重复的事情,从而达到效率的提升。

      2、在Python中有两种类型的循环,第一种叫做for循环(for-loop),第二种叫做while循环(while-loop)。从实际使用上来说,while循环在Python开发中并不常见,需要使用while循环的地方我们也可以使用for循环来进行模拟,从而达到同样的效果。

      3、for循环一般和批量的处理数据是分不开的,for循环把一堆数据中的每一个都按照特定的规则进行重复处理。

    二、认识循环

    for i in [1,2,3]:
        print(i)

     

      1、在编程中,当我们使用一个来自于集合体的东西, 并且它能够一次次的被取出直至产生它的集合体被耗尽,那么 我们通常认为这描述的是 【可迭代对象】(iterable)的特征,也就是我们所说的一堆数据。

      2、想要使用 for循环,就一定需要一个可迭代对象作为被循环的主体。前面提到的容器类型的数据全部都是可迭代的对象(光从名字就不难猜出),但是实际上在 Python 还有更多的可迭代对象,我们可以使用 iter() 函数来判断是否是可迭代对象——作为参数放进去不报错,那说明就是可迭代的,就可以被用于 for 循环;如果报错了就不是可迭代的。

      3、i 可以称为循环变量(loop variable)。

    for i in container:
        do something

      (1)每一个数据在使用的时候会有名字(变量赋值)。

      (2)每一个数据在被使用的时候都按照统一的名字(变量名)进行操作。

      (3)被操作完的数据就不再拥有这个名字,但最后一个元素除外(i=last)。

      4、do something

      我们对循环中数据的处理规则全部写在换行后的缩进里面,无论是像是变量赋值或者还是调用函数在或者其他的事情,所有在缩进里的代码全部会被认为是要在这一次循环中做的事情。循环会在可迭代对象中数据全部被访问过的时候停止,除非我们在这之前使用另外的语句叫停。

    三、循环的4个应用场景

      1、使用可迭代对象中的数据

      在实际的开发中,经常会将容器中的数据全部作为原料使用。

      比如像是发送消息给所有的用户这样的行为,这其中的批量处理是怎样实现的呢?实际上是给一个相当于【信息发送机】的函数批量的提供要发送的用户名和内容,从而实现循环调用函数。

    users = [
        'Frank Zappa',
        'Terry Bozzio',
        'Adrian Bwlew'
    ]
    for user in users:
      # send_message(user,'Hello')
        print('hello,'+user)

      使用爬虫获得每一个页面的信息的时候,是一次打开并保存列表中的每一个网址。

    urls = [
        'www.a.com',
        'www.b.com',
        'www.c.com'
    ]
    for url in urls:
        full_url = 'http://'+url
        # web = open(full_url)
        # web.save()
        print(full_url)

      2、构造/整理容器内的数据

      有时候容器里的数据本身是不规整的,或者是有一些不想要的数据,这时候用循环就可以很方便的批量清洗数据,把容器中的数据进行过滤和重组之后再使用。

    albums_list = [
        'reuion',
        'lefttoverture',
        'machine head'
    ]
    new_list = []
    for album in albums_list:
        # capitalize()将字符串的第一个字母变成大写,其他字母变小写。
        new_name = album.capitalize()
        new_list.append(new_name)
        
    print(new_list)

      3、嵌套多重循环

      多重循环就是在循环中进行循环,这么做的原因是,有时候我们在同一时间处理多个嵌套的数据结构,也就是可迭代对象中的每一个元素仍然是可迭代的,这种循环常见于数据库类型的对象中查询或者是修改单位数据。

    album = [
        [
            'Good Times Bad Times',
        ],
        [
            'Your Time Is Gonna Come'
            'Black Mountain Side'
        ]
    ]
    for Side in album:
        for song in side:
            print(song)

      4、循环中的条件分支

      将条件中的数据进行分类和筛选也是常见的一种操作行为,但是这不可避免的要使用到条件判断语句作为分支的筛选器。

      for + if 

    四、总结

      “把一堆数据中的每一个都按照特定的规则进行重复处理。”

    for i in container:
        do something

      1、使用可迭代对象中的数据

      2、构造/整理容器内的数据

      3、嵌套多重循环

      4、循环中的条件分支

     

  • 相关阅读:
    django 基础1
    django 权限管理
    django 统计表
    关于RF中类似于异常(TRY语句)情况的处理
    关于提BUG的一点思考以及工作中总结的规范
    关于爬虫的学习
    关于RF中元素定位问题
    RobotFrameWork(五)控制流之if语句——Run Keyword If
    最完整的自动化测试流程
    关于python语言学习心得
  • 原文地址:https://www.cnblogs.com/Lamfai/p/9332225.html
Copyright © 2011-2022 走看看