Python 如何将子列表的元素与管道连接?
我有一份表格清单:Python 如何将子列表的元素与管道连接?,python,Python,我有一份表格清单: name=['123,杰克',['jack johnson,jack richards,jack michaels'],['325,nick',['nick thompson,nick jacobs,nick smith'],…] 其中,每个通用名都有一个与其关联的id,而该元素的子列表包含以通用名开头的每个全名 我想更改包含全名的子列表的每个元素,并用管道替换逗号,以便以以下形式给出列表: name=['123,杰克',['jack johnson | jack richa
name=['123,杰克',['jack johnson,jack richards,jack michaels'],['325,nick',['nick thompson,nick jacobs,nick smith'],…]
其中,每个通用名都有一个与其关联的id,而该元素的子列表包含以通用名开头的每个全名
我想更改包含全名的子列表的每个元素,并用管道替换逗号,以便以以下形式给出列表:
name=['123,杰克',['jack johnson | jack richards | jack michaels'],['325,nick',['nick thompson | nick jacobs | nick smith'],…]
是否有一种迭代列表并进行替换的最佳方法?您可以使用嵌套列表理解,并使用with来更改内部列表分隔符:
[i + ['| '.join(j)] for *i, j in names]
[['123, jack', 'jack johnson| jack richards| jack michaels'],
['325, nick', 'nick thompson| nick jacobs| nick smith']]
请注意,通过使用此选项,将在子列表之前处理任意数量的字符串。例如,在另一个例子中:
names = [['123, jack', 'MORE STRINGS', ['jack johnson', 'jack richards', 'jack michaels']],
['325, nick',['nick thompson', 'nick jacobs', 'nick smith']]]
[i + ['| '.join(j)] for *i, j in names]
[['123, jack', 'MORE STRINGS', 'jack johnson| jack richards| jack michaels'],
['325, nick', 'nick thompson| nick jacobs| nick smith']]