zoukankan      html  css  js  c++  java
  • python系统学习:第四周之列表生成式、生成器、迭代器

    # 列表生成式
    lists = [x * x for x in range(1, 11)]
    print(lists)
    # 列表生成式2
    lists2 = [x * x for x in range(1, 11) if x % 2 == 0]
    print(lists2)
    # 列表生成式3
    lists3 = [x + y + z for x in '1234' for y in '1234' for z in '1234' if x != y != z]
    print(lists3)
    # 生成器:一边循环一边计算的机制generator
    # 第一种暴力方法
    lists4 = (x for x in range(1, 11) if x % 2 == 0)
    print(next(lists4)) # 输出用next
    for i in lists4: # 输出用循环
    print(i)
    # 可迭代对象:
    # 可用于for循环的数据类型有以下几种,他们统称为可迭代对象(iterable):
    # 首先是集合数据类型,如:list、tuple、dict、set、str
    # 其次是generaor,包括生成器和带yield的generator function
    # 使用isinstance()判断是否是iterable
    # from collections import iterable
    # isinstance([], iterable)
    # 迭代器:
    # 不仅可以使用for循环,还可以使用 next()调用,叫做迭代器:iterator
    # 使用isinstance()判断是否是iterator
    # form collections import iterator
    # isinstance([],iterator)
    # list、dict 虽然是iterable(可迭代对象,可for循环),但是不属于iterator(迭代器)
    # 利用iter()函数将其变为iterator



    关于这一模块,要通过例子不断深化,不然很难理解
  • 相关阅读:
    后台管理界面
    登陆页面
    Django models中关于blank与null的补充说明
    django学习之路
    Django在根据models生成数据库表时报 __init__() missing 1 required positional argument: 'on_delete'
    django2笔记:路由path语法
    四 数据库备份
    Python操作MySQL
    三 数据库其他
    Shell----简单整理
  • 原文地址:https://www.cnblogs.com/niushichong/p/10209921.html
Copyright © 2011-2022 走看看