Python 如何将一个有序列表中的每个对象插入到另一个嵌套列表中?
使用Python3.7,我有两个列表,一个是嵌套的,另一个不是,我想提取在一个列表中排序的字符串,并将每个字符串放入相应的有序嵌套列表中。一旦嵌套列表被合并,我计划将它们解压缩到一个表中 我尝试执行一个嵌套for循环,在该循环中,我迭代嵌套循环以隔离嵌套列表,然后执行第二个for循环以从其常规(未列出)列表中提取每个字符串对象。我尝试将字符串插入嵌套列表时,要么遍历字符串中的每个字符,要么将整个字符串列表添加到嵌套列表中。我尝试了一些不同的列表理解尝试,但是作为Python新手,我还没有掌握遍历列表的语法 一个非常简单的尝试,希望能解释我想要实现的目标Python 如何将一个有序列表中的每个对象插入到另一个嵌套列表中?,python,python-3.x,Python,Python 3.x,使用Python3.7,我有两个列表,一个是嵌套的,另一个不是,我想提取在一个列表中排序的字符串,并将每个字符串放入相应的有序嵌套列表中。一旦嵌套列表被合并,我计划将它们解压缩到一个表中 我尝试执行一个嵌套for循环,在该循环中,我迭代嵌套循环以隔离嵌套列表,然后执行第二个for循环以从其常规(未列出)列表中提取每个字符串对象。我尝试将字符串插入嵌套列表时,要么遍历字符串中的每个字符,要么将整个字符串列表添加到嵌套列表中。我尝试了一些不同的列表理解尝试,但是作为Python新手,我还没有掌握遍历
a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
b = ['1-10', '10-20', '20-30']
for i in a:
for j in b:
i.insert(0, j)
print(a)
>>> [['1-10', 1, 2, 3], ['10-20', 4, 5, 6], ['20-30', 7, 8, 9]]
在列表中使用
zip
:
[[y] + x for x, y in zip(a, b)]
示例:
a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
b = ['1-10', '10-20', '20-30']
print([[y] + x for x, y in zip(a, b)])
# [['1-10', 1, 2, 3], ['10-20', 4, 5, 6], ['20-30', 7, 8, 9]]
或使用拆包:
print([[y, *x] for x, y in zip(a, b)])
输出:
[['1-10', 1, 2, 3], ['10-20', 4, 5, 6], ['20-30', 7, 8, 9]]
这真的帮助我理解进入巢穴的理解,谢谢你。有什么方法可以更新列表“a”而不是打印其串联吗?@sovgott,您可以始终将其分配回
a
而不是打印:a=[…]
。