為什麼這個自定義反向函數的行為很奇怪?

為什麼

我需要編寫一個自定義的反向函數,這裡是代碼:

def reverse(x):
    length = len(x)
    out = x
    for i in range(length):
        out[length-i-1] = x[i]
    return out

print(reverse([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]))

但出於某種原因,這個輸出[1, 2, 3, 4, 5, 6, 6, 5, 4, 3, 2, 1],有誰知道為什麼會這樣?

羅姆

out = x使變量out指向與 相同的列表x你可能想要做out = x.copy()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

為什麼這個參數構造函數只適用於多行定義?

為什麼在 Python 中用參數調用這個“構造函數”?

為什麼我使用inner.HTML會出現這些奇怪的函數

為什麼這兩個等效函數的輸出不同?

為什麼這個函數只是被跳過而不是被調用?

為什麼這個簡單的python函數只能工作一次

為什麼這個 for 循環起作用而函數不起作用?

為什麼接口中的這個箭頭函數不能編譯?

為什麼JS在babel腳本中找不到這個函數?

為什麼這段代碼在函數執行後需要這麼長時間?

為什麼在 mdn 的這個示例中,每個內部函數都將先前的(父)函數參數作為輸入?

為什麼我的另一個文件中的 void 函數沒有在這個 C 程序中運行?

為什麼總是出現這個錯誤,我試圖在函數運行時將一個角色隱藏起來

為什麼編譯器說這個宏函數需要一個右括號?

未定義 LVGL 函數 - 為什麼?

為什麼這個功能沒有並行?

為什麼在這個 if 語句中執行“and not”?

R 為什麼我必須為它自己分配一個形式參數變量才能使這個函數工作?

誰能告訴我為什麼這個函數在調用時會拋出錯誤

為什麼我的函數在 componentDidMount 之前運行

為什麼我在構造函數中填充的這個數組在構造函數返回後沒有填充?

為什麼此函數在定義後立即調用時返回最後一個參數

為什麼這個模型在我定義了參數後還需要先調用'build()'?

為什麼這個查詢需要這麼長時間才能執行?

我的 C 函數反轉數組在連續運行後用隨機數填充第一個和最後一個索引。為什麼是這樣?

為什麼這麼多庫定義自己的固定寬度整數?

為什麼 sort() 的 compare 函數會這樣工作?

為什麼這些靜態函數在它們的文件之外工作?

為什麼一個除數函數比另一個快 3000%?