如何用Python将[1,2,3,4]转换为'1234

5 投票
2 回答
3629 浏览
提问于 2025-04-15 21:21

我想把一串数字列表,比如说 [1, 2, 3, 4],变成一个字符串,结果应该是 '1234'
还有像 [10, 11, 12, 13] 这样的列表,转换后应该是 '10111213'

... 其他类似的例子也是这样 ...

2 个回答

12
''.join(str(i) for i in [1,2,3,4])

当然可以!请把你想要翻译的内容发给我,我会帮你把它变得简单易懂。

20
  • map(str, array) 的意思是把数组里的每个元素都变成字符串,跟 [str(x) for x in array] 是一样的。所以当你用 map(str, [1,2,3,4]) 时,它会返回 ['1', '2', '3', '4']
  • ''.join(map(str, [1,2,3,4] ))
    

    s.join(a) 是把序列 a 中的所有元素用字符串 s 连接起来,比如说,

    >>> ','.join(['foo', 'bar', '', 'baz'])
    'foo,bar,,baz'
    

    要注意的是,.join 只能连接字符串的序列,它不会自动把其他类型的东西变成字符串。

    >>> ''.join([1,2,3,4])
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: sequence item 0: expected string, int found
    

    所以我们需要先用 map 把所有的元素都变成字符串。

撰写回答