我有一个字符串数组,例如:
a = ['123', '456', '789']
我希望将其拆分为一个二维字符数组:
b = [['1', '2', '3'], ['4', '5', '6'], ['7', '8', '9']]
我正在使用的是:
[[element for element in line] for line in array]
我想实现我的目标,但发现阅读起来并不容易,是否有任何内置的函数或者更易读的方法来达成这个目标?
first_list = ['123', '456', '789']
other_weirder_list = [list(line) for line in first_list]
您的解决方案并不差,但您可以尝试像arashajii提出的那样使用map
或者类似的方法。
map(list, array)
应该可以解决问题。
map
:>>> a
['123', '456', '789']
>>> map(list, a)
[['1', '2', '3'], ['4', '5', '6'], ['7', '8', '9']]
虽然我真的不明白为什么你需要这样做(除非你计划编辑字符串中的一个特定字符?)。字符串的行为类似于列表。
首先我尝试了e.split('')
,但是报错:ValueError: empty separator
。
请尝试这个:
a = ['123', '456', '789']
b = [list(e) for e in a]
b
[['1', '2', '3'], ['4', '5', '6'], ['7', '8', '9']]