专栏名称: Python小屋
清华出版社《Python程序设计》系列教材作者董付国的Python小屋。介绍Python基础语法知识、标准库、扩展库知识,探讨Python在各领域的应用。
今天看啥  ›  专栏  ›  Python小屋

Python花式编程案例集锦(5)

Python小屋  · 公众号  · Python  · 2017-09-18 23:21
问题描述:输入三个序列,例如:[0.9,0.5,0.7],[0.4,0.6,0.3],[0.5,0.2,0.4],输出三个序列中各取一个相乘后最大的值,以及组合方式,如最大值为0.9*0.6*0.5,0,1,0组合,第一个序列第一个,第二个序列第二个,第三个序列第一个。参考代码及优化思路:首先让我们导入标准库random,并编写用来获取随机列表的函数,以便后面进行测试:from random import randrange# 获取测试数据def getData(m, n):    return [[randrange(1,50) for i in range(m)] for j in range(n)]然后先按照传统套路编写代码如下:# 传统套路def demo1(x, y, z):    product = -float('inf')    positions = ()    for i, v1 in enumerate(x):        for j, v2 in enumerate(y):            for k, v3 in enumerate(z):                t = v1*v2*v3           ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照