python - 每 3 个值创建一个包含 3 个值的列表
问题描述
我在编写这段代码时遇到了麻烦。我需要创建一个列表,每 3 个值只有 3 个值:
预期的输出必须是这样的:
output1 = [1,2,3,7,8,9,13,14,15,....67,68,69]
output2 = [4,5,6,10,11,12...70,71,72]
有什么想法我怎么能做到这一点?
解决方案
使用两个循环——一个用于每三个一组,一个用于该组中的每个项目。例如:
>>> [i*6 + j for i in range(12) for j in range(1, 4)]
[1, 2, 3, 7, 8, 9, 13, 14, 15, 19, 20, 21, 25, 26, 27, 31, 32, 33, 37, 38, 39, 43, 44, 45, 49, 50, 51, 55, 56, 57, 61, 62, 63, 67, 68, 69]
>>> [i*6 + j for i in range(12) for j in range(4, 7)]
[4, 5, 6, 10, 11, 12, 16, 17, 18, 22, 23, 24, 28, 29, 30, 34, 35, 36, 40, 41, 42, 46, 47, 48, 52, 53, 54, 58, 59, 60, 64, 65, 66, 70, 71, 72]
推荐阅读
- c++ - 在谷歌测试中使用 premake
- ajax - CakePHP 在初始 Ajax 调用之后调用第二个控制器方法
- angular - owl-carousel 不适用于带有 html 模板的 angular 中的 *ngfor 循环
- c# - C# MySQL 事务不适用于抛出异常的代码
- php - 在 cPanel 上使用 PHP 7.2 脚本创建电子邮件
- angular - 从另一个组件调用函数后,绑定在 Angular 中不起作用
- node.js - 如何正确在 MongoDB 中插入对象?
- linux - 部署后 Docker 容器未运行的问题
- python - 我可以将 Python 枚举编译成 numba jitclass 吗?
- python - 如何在 Django 中创建计划