如何从第一个 x 项是外部项的现有列表创建嵌套列表?
How can I create a nested list from an existing one where the first x items are the outer items?
我有一个 table 被抓取到表格列表中:
['Column A', 'Column B' 'Column C', 'Item A1', 'Item B1', 'Item C1' ...]
我想把它变成一个嵌套列表,这样我就可以像 Python 中的 table 一样使用它,就像这样:
[[Column A, Item A1, Item A2, Item A3, Item A4], [Column B, ... ]
此外,这会是 best/simplest 处理这些数据的方式吗?
谢谢
x = 3
data = ['Column A', 'Column B', 'Column C', 'Item A1', ... , 'Item C4']
newList = []
for i in range (x):
newList.append(data[i::x])
print (newList)
会给这个:
[['Column A', 'Item A1', 'Item A2', 'Item A3', , 'Item A4'], ['Column B', 'Item B1', 'Item B2', 'Item B3', 'Item B4'], ['Column C', 'Item C1', 'Item C2', 'Item C3', 'Item C4']]
如,字典可能更好。与其添加到名为 newList
的列表,不如像这样创建一个新词典:
newDict = {}
并像这样添加:
for i in range (x):
newDict[data[i]] = data[i+x::x]
print (newDict)
这是一个奇怪的顺序:
{'Column B': ['Item B1', 'Item B2', 'Item B3'], 'Column C': ['Item C1', 'Item C2', 'Item C3'], 'Column A': ['Item A1', 'Item A2', 'Item A3']}
但顺序无关紧要。要访问 "A" 项,您可以使用 newDict['Column A']
.
我有一个 table 被抓取到表格列表中:
['Column A', 'Column B' 'Column C', 'Item A1', 'Item B1', 'Item C1' ...]
我想把它变成一个嵌套列表,这样我就可以像 Python 中的 table 一样使用它,就像这样:
[[Column A, Item A1, Item A2, Item A3, Item A4], [Column B, ... ]
此外,这会是 best/simplest 处理这些数据的方式吗?
谢谢
x = 3
data = ['Column A', 'Column B', 'Column C', 'Item A1', ... , 'Item C4']
newList = []
for i in range (x):
newList.append(data[i::x])
print (newList)
会给这个:
[['Column A', 'Item A1', 'Item A2', 'Item A3', , 'Item A4'], ['Column B', 'Item B1', 'Item B2', 'Item B3', 'Item B4'], ['Column C', 'Item C1', 'Item C2', 'Item C3', 'Item C4']]
如newList
的列表,不如像这样创建一个新词典:
newDict = {}
并像这样添加:
for i in range (x):
newDict[data[i]] = data[i+x::x]
print (newDict)
这是一个奇怪的顺序:
{'Column B': ['Item B1', 'Item B2', 'Item B3'], 'Column C': ['Item C1', 'Item C2', 'Item C3'], 'Column A': ['Item A1', 'Item A2', 'Item A3']}
但顺序无关紧要。要访问 "A" 项,您可以使用 newDict['Column A']
.