簡體   English   中英

Python 中的一維數組到二維數組

[英]1d array to 2d array in Python

我有

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[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

這將為您的給定輸入生成以下 output

[['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', '']]

如果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']

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM