Python中的1d数组到2d数组



我有

arr[0] = ['2020-11-28T17:00:00,ITA,33299,3762,37061,752247,789308,1415,26323,720861,54363,942048,622484,1564532,21637641,12842250,']
arr[1] = ['2020-11-29T17:00:00,ITA,32879,3753,36632,759139,795771,6463,20648,734503,54904,958832,626346,1585178,21814575,12922382,']
...

我应该把这个1d数组转换成像一样的2d数组

arr[0][0] = ['2020-11-28T17:00:00']
arr[0][1] = ['ITA']
...

我该怎么办?从下午开始我就一直在打我的头,但就是打不动。感谢

如果arr类似:

>>> arr = [['2020-11-28T17:00:00,ITA,33299,3762,37061,752247,789308,1415,26323,720861,54363,942048,622484,1564532,21637641,12842250,'], ['2020-11-29T17:00:00,ITA,32879,3753,36632,759139,795771,6463,20648,734503,54904,958832,626346,1585178,21814575,12922382,']]
>>>
>>> # so that:
>>> arr[0]
['2020-11-28T17:00:00,ITA,33299,3762,37061,752247,789308,1415,26323,720861,54363,942048,622484,1564532,21637641,12842250,']
>>> arr[1]
['2020-11-29T17:00:00,ITA,32879,3753,36632,759139,795771,6463,20648,734503,54904,958832,626346,1585178,21814575,12922382,']

你可以使用列表理解:

>>> arr = [[[x2] for x2 in x1[0].split(',')] for x1 in arr]
>>>
>>> # so now:
>>> arr[0][0]
['2020-11-28T17:00:00']
>>> arr[0][1]
['ITA']

您可以对每个子数组使用拆分操作,并将生成的数组更新为原始数组。

for i in range(len(arr)):
newarray = arr[i][0].split(',') # Creating new list
arr.pop(i) # Remove old list
arr.insert(i, newarray) # Adding new list in same

这将为您给定的输入产生以下输出

[['2020-11-28T17:00:00', 'ITA', '33299', '3762', '37061', '752247', '789308', '1415', '26323', '720861', '54363', '942048', '622484', '1564532', '21637641', '12842250', ''],
['2020-11-29T17:00:00', 'ITA', '32879', '3753', '36632', '759139', '795771', '6463', '20648', '734503', '54904', '958832', '626346', '1585178', '21814575', '12922382', '']]

最新更新