我有這個問題,我想用一個新元素替換一個元素,而不是洗掉我替換的元素,我只是想讓它移動到下一個索引。
import numpy as np
empty_arr = [0] * 5
arr = np.array(empty_arr)
inserted = np.insert(empty_arr, 1, 3)
inserted = np.insert(empty_arr, 1, 4)
#Output:
[0 4 0 0 0 0]
我不知道正確的語法,但我只想用4替換元素3
#Expected Output:
[0 3 4 0 0 0] #move the element 4 to next index
uj5u.com熱心網友回復:
您將第一次插入的結果放在inserted變數中,但您是從第二次插入的原始陣列重新開始并覆寫先前的結果。
您應該從上一個結果開始第二次插入:
inserted = np.insert(empty_arr, 1, 3)
inserted = np.insert(inserted, 1, 4)
順便說一句,你必須為此使用 numpy 陣列嗎?常規 Python 串列似乎更適合:
empty_arr = [0] * 5
empty_arr.insert(1,3)
empty_arr.insert(1,4)
print(empty_arr)
[0, 4, 3, 0, 0, 0, 0]
請注意,如果您希望結果中的 3 之后出現 4,則必須在索引 1 處以相反的順序插入它們,或者在索引 1 處插入 3 之后在索引 2 處插入 4。
uj5u.com熱心網友回復:
import numpy as np
empty_arr = [0] * 5
arr = np.array(empty_arr)
empty_arr = np.insert(empty_arr, 1, 3)
empty_arr = np.insert(empty_arr, 1, 4)
#output
array([0, 4, 3, 0, 0, 0, 0])
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/325916.html
