【发布时间】:2020-05-12 22:30:17
【问题描述】:
问题:
我想制作一个子列表字符串计数为 3 的列表。我用矩阵技术尝试过它,但到目前为止它不起作用。
我无法计数,创建列表,第一个元素,第二个元素,第三个元素,创建新列表,插入第四个元素,第五个元素,第六个元素,创建新列表...
如果代码也可以处理不能被 3 整除的项目列表长度,那就太好了。就像我的源列表中的 8 个字符串一样。
样本数据:
my_list = ['Item11', 'Item12', 'Item13', 'Item24', 'Item25', 'Item26', 'Item37', 'Item38', 'Item39']
我的尝试:
sublist = []
for mainlist in range(3):
# Append an empty sublist inside the list
mainlist.append([])
for item in my_list:
for sublist in mainlist:
sublist.append(item)
print(sublist)
预期结果:
my_list = [['Item11', 'Item12', 'Item13'], ['Item24', 'Item25', 'Item26'], ['Item37', 'Item38', 'Item39']]
【问题讨论】:
-
这似乎需要更多解释:输出列表中的字符串与输入中的字符串不匹配。但是,您的代码中没有任何内容可以影响该更改。
-
@Prune 很抱歉我更新了结果。我打错了,现在应该匹配了。
-
这似乎是重复的——但你必须知道这被称为“分块”列表。搜索“Python 块列表”。
-
我目前正在查找它。到目前为止,从未听说过“分块”这个词。我会及时通知你。
-
不开玩笑......这不是一个正式的 Python 术语,只是数据处理程序所称的过程。
标签: python list for-loop nested-lists