博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 笔记 之 列表生成式和生成器
阅读量:7074 次
发布时间:2019-06-28

本文共 2412 字,大约阅读时间需要 8 分钟。

hot3.png

'''列表生成式[exp for val in collection if condition]生成器方法一:(exp for val in collection if condition)方法二:使用yield关键字'''a1 = (x for x in range(1, 10) if x % 2 == 0)print(a1)     #是一个对象# python2 a1.next()print(next(a1))  # python3 是直接调用next方法,到下一个print("#"*20)    # 打印20个#号for i in a1:    print(i)a2 = [x for x in range(1, 10) if x % 2 == 0]print(a2)    #是一个列表def test():    a = 1    for i in range(1, 10):        yield i   #返回之后会回到这里,执行下一行        a += 1        # return i#  return 和 yield的区别# yield可以理解成return ,但是比return多一些角色# yield每次都返回,但是下一次取值,是从yield的下一行开始执行m = test()print(m)# 九宫格def jgg():    # number = list()    count = 1    # for i in range(1, 10):    #     number.append(i)    for A in [x for x in range(1, 10)]:        for B in [x for x in range(1, 10) if x != A]:            for C in [x for x in range(1, 10) if x != A and x != B]:                for D in [x for x in range(1, 10) if x != A and x != B and x != C]:                    for E in [x for x in range(1, 10) if x != A and x != B and x != C and x != D]:                        for F in [x for x in range(1, 10) if x != A and x != B and x != C and x != D and x != E]:                            for G in [x for x in range(1, 10) if                                      x != A and x != B and x != C and x != D and x != E and x != F]:                                for H in [x for x in range(1, 10) if                                          x != A and x != B and x != C and x != D and x != E and x != F and x != G]:                                    for I in [x for x in range(1, 10) if                                              x != A and x != B and x != C and x != D and x != E and x != F and x != G and x != H]:                                        if (                                                A + B + C == D + E + F == G + H + I == A + D + G == B + E + H == C + F + I == A + E + I == C + E + G == 15):                                            print('''         -------------    第   | {1} | {2} | {3} |    {0}.   | {4} | {5} | {6} |    个   | {7} | {8} | {9} |         -------------                                                                                '''.format(count, A, B, C, D, E, F, G,                                                                                           H, I))                                            count += 1# 九宫格 end# jgg()  想要输出九宫格结果就去掉注释

转载于:https://my.oschina.net/u/3824134/blog/1797526

你可能感兴趣的文章
我的友情链接
查看>>
ThinkSNS开源社交系统安装问题及解决措施
查看>>
2018年微信小程序风口最新发展趋势分析
查看>>
ThinkSNS+ 移动端1.8.2.0704 版本更新简要说明
查看>>
ThinkSNSPlus 2.0 产品体验报告
查看>>
LINUX 中实现逻辑卷、自动挂载
查看>>
26、C#里面标签的属性和事件
查看>>
python的zipfile模块记录
查看>>
如何检测web服务器是nginx还是apache
查看>>
Mac OS X上如何安装Homebrew?
查看>>
python01 用户交互程序
查看>>
zabbix监控模板大全
查看>>
马化腾创业前传:50万创业资金自炒股得来
查看>>
我的友情链接
查看>>
redis开启远程访问
查看>>
真正能支撑高并发以及高可用的复杂系统中的缓存架构有哪些东西?
查看>>
Oracle 12c:ORA-28040
查看>>
我的友情链接
查看>>
img 样式单和属性
查看>>
RAID磁盘阵列种类及区别
查看>>