我有 2 個包含一些數字的陣列:
RA=['20 12 40.0319', '15 15 48.4459'...'10 57 3.0215']
DEC=['-02 08 39.97', '-37 09 16.03'...' 22 42 39.07']
我想將這些陣列合并為一個,例如:
POS=['20 12 40.0319 -02 08 39.97','15 15 48.4459 -37 09 16.03','10 57 3.0215 22 42 39.07']
所以基本上我想將新陣列的第 i 個元素的第 i 個元素與它們之間的選項卡合并。我怎樣才能做到這一點?
uj5u.com熱心網友回復:
該
zip()函式回傳一個 zip 物件,它是元組的迭代器,其中每個傳遞的迭代器中的第一項配對在一起,然后每個傳遞的迭代器中的第二項配對在一起,依此類推。如果傳遞的迭代器具有不同的長度,則迭代器與最少的專案決定了新迭代器的長度。
POS = [i ' ' k for i, k in zip(RA,DEC)]
uj5u.com熱心網友回復:
利用 zip
>>> POS = [(i '\t' j) for (i,j) in zip(RA, DEC)]
>>> for i in POS:
print(i)
20 12 40.0319 -02 08 39.97
15 15 48.4459 -37 09 16.03
10 57 3.0215 22 42 39.07
uj5u.com熱心網友回復:
我可以想到兩種將這些陣列合并在一起的方法,一種方法是使用 其他人提供的運算子連接第 i 個元素。
或者,您可以使用f-strings。
解決方案
def merge_arrays(arr1, arr2):
return [f"{i}\t{j}" for i, j in zip(arr1, arr2)]
RA=['20 12 40.0319', '15 15 48.4459', '10 57 3.0215']
DEC=['-02 08 39.97', '-37 09 16.03', ' 22 42 39.07']
print("\n".join(merge_arrays(RA, DEC)))
輸出
20 12 40.0319 -02 08 39.97
15 15 48.4459 -37 09 16.03
10 57 3.0215 22 42 39.07
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/413819.html
標籤:
上一篇:將位元組轉換為負整數?
