【发布时间】:2017-02-12 16:40:06
【问题描述】:
给定一个 Python 元组
products = (a, b, c, d, e, f, g)
我试图从“产品”中生成一个新的元组/列表,但要根据特定的模式:
所有可能的按时间顺序排列的组合,例如ab, ac (& 等等...) af, ag, bc, 等等
类似于 #1,但以三组为一组,并确保“中间”产品任一侧的增量变化相等,例如abc, bcd (& 等等...) 和 ace, bdf, ceg
四个一组,再次确保增量变化等于中间产品的任一侧(和之间),例如abcd, bcde (& 等等...) 和 aceg
通过询问和阅读 Python 网站,itertools.combinations() 函数似乎朝着正确方向迈出了一步。但是考虑到正在寻求创建的特定模式,似乎需要的不仅仅是标准使用形式的功能。有什么建议吗?
附: 平均实际元组比上面的例子长几倍(我总共有大约 40 个元组),每个元组中的一些“产品”会过期/退出,每隔几周就会添加新的,因此手动将组合输入到新元组中不符合自动化的目标。
【问题讨论】:
-
请添加您的代码,如果您不显示您所做的,我们将无法帮助您。
-
我投票结束这个问题,因为 Stackoverflow 不是代码编写服务。
-
Jarvis,我还没有编写任何代码,至少没有针对这些模式。
-
否,但其中许多已关闭(或应该关闭)。 stakcoverflow 也不是一个教程网站。你需要做更多的阅读和研究……而不是开始要求别人为你编写代码(或者告诉你如何编写代码,这几乎是一回事)。
-
@Martineau - 哦,真的吗?有点像您在其他线程中所做的(例如“Tkinter 如何将 TTK 按钮更改为粗体?”)?