簡體   English   中英

如何使用列表推導按索引操作數組數據?

[英]How can I use list comprehension for manipulating array data by index?

我有一段代碼基本上將列表中的每個元素向下移動 1,以便稍后在第一個 position 中為新的輸入數據騰出空間,如下所示:

wave_amp.reverse()

for i in range(len(wave_amp)-1):
    wave_amp[i] = wave_amp[i+1]enter code here

wave_amp.reverse()

如果可能的話,如何使用列表理解更快地執行?

嘗試這個:

wave_amp.insert( 0 , new_item )

list.insert(index, item)方法將項目插入到所需的列表索引中。 在您的情況下,我們想在列表的開頭添加新項目,因此我們必須插入index = 0

或者,如果您想騰出一些空間並稍后添加該項目,您可以試試這個:

# Make some room in list
wave_amp = [None] + wave_amp
# ...
# Some code
# ...
wave_amp[0] = new_data

您可以使用list.insert

list.insert(i, x)

在給定的 position 處插入一個項目。 第一個參數是要插入的元素的索引,所以 a.insert(0, x) 插入到列表的最前面,a.insert(len(a), x) 等價於 a.append( X)。

my_list = [1, 2, 3, 4]
new_input = 100
my_list.insert(0, new_input)

print(my_list)

output:

[100, 1, 2, 3, 4]

或者你可以插入一個默認值,直到你想用新的輸入填充

my_list.insert(0, None)

暫無
暫無

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

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