将一个列表的列表转换为一个字符串

2024-04-16 17:23:49 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有一个列表

A = [[1,1,1,1],[2,2,2,2]]

我想创建两个字符串

'1111'

'2222'

在python中我们将如何做到这一点?你知道吗


Tags: 字符串列表
2条回答

也许list comprehension

>>> A = [[1,1,1,1],[2,2,2,2]]
>>> l=[''.join(map(str,i)) for i in A]
>>> l
['1111', '2222']
>>> 

现在你明白了。你知道吗

这很容易用join和列表理解来完成。你知道吗

A = [[1,1,1,1],[2,2,2,2]]
a_strings = [''.join(map(str, sub_list)) for sublist in A]

请看,join()获取一个字符串列表,并生成一个连接所有子字符串的字符串,而我使用的列表理解只是循环遍历所有子字符串。上面我把两个结合在一起。你知道吗


再想想

map()实际上被认为更efficient(当不使用lambda时。。等等)和一些更可读的。我将只添加一个使用map而不是理解的方法。你知道吗

a_strings = map(''.join(), map(str, A))

这首先获取内部映射,并为每个子列表生成所有ints>;str,然后joins所有str。你知道吗

希望这能让你更容易咀嚼,每一种方法都是等价的,这样你就可以考虑它们的风格选择了。你知道吗

相关问题 更多 >