簡體   English   中英

如何在 python 中的一個數組中分配多個 arrays

[英]How to assign multiple arrays in one single array in python

我有 3 個不同的 arrays,我想以指定格式加入一個數組
例子:

arr_1 = [A,B,C]
arr_2 = [1,2,3]
arr_3 = [E,F,G]

我希望結果數組看起來像這樣:

arr_result = [[A,1,E],[B,2,F],[C,3,G]]
arr_1 = ['A','B','C']
arr_2 = [1,2,3]
arr_3 = ['E','F','G']

arrays = [arr_1,arr_2,arr_3]
print([[arr[i] for arr in arrays] for i in range(3)])
>> [['A', 1, 'E'], ['B', 2, 'F'], ['C', 3, 'G']]

這個列表生成器應該可以解決問題:

arr_1 = ['A','B','C']
arr_2 = [1,2,3]
arr_3 = ['E','F','G']

arrays = [arr_1,arr_2,arr_3]
print([[arr[i] for arr in arrays] for i in range(3)])
>> [['A', 1, 'E'], ['B', 2, 'F'], ['C', 3, 'G']]

有一些方法可以實現,其中一個是使用 zip function 這里是一個例子

arr_1 = ['A', 'B', 'C']
arr_2 = [1, 2, 3]
arr_3 = ['E', 'F', 'G']

arr_result = []

for a, b, c in zip(arr_1, arr_2, arr_3):
    arr_result.append([a, b, c])

print(arr_result)

在此示例中,代碼將遍歷每個數組的元素並使用每個數組中的元素創建一個新數組。 此代碼假定 arrays 長度相同。

另一種方法是使用列表理解

arr_1 = ['A', 'B', 'C']
arr_2 = [1, 2, 3]
arr_3 = ['E', 'F', 'G']

arr_result = [[a, b, c] for a, b, c in zip(arr_1, arr_2, arr_3)]

print(arr_result)
arr1 = ["A", "B", "C"]
arr2 = [1, 2, 3]
arr3 = ["E", "F", "G"]
arr4 = [[ *i ] for i in zip(arr1, arr2, arr3)]

Output:

[['A', 1, 'E'], ['B', 2, 'F'], ['C', 3, 'G']]

您好,您也可以使用 for 循環:

l=[]
for i in range(len(arr_1)):
        l.append([arr_1[i],arr_2[i],arr_3[i]])

暫無
暫無

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

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