在python中、列表中的元素可以是_在Python中存储一个列表的元素,在另一个列表中 – 通过引用?...
我只是覺得我已經把它記下來了,因為我已經看過了 – 對這種行為得到確認會很好;我確實看到了
How do I pass a variable by reference?,但我不確定如何在這種情況下解釋它.
假設我們有這兩個數組/列表:
a = [1, 2, 3, 4]
b = [-1, a, -100, a[2], -1]
口譯員最初將其視為:
>>> print(a)
[1, 2, 3, 4]
>>> print(b)
[-1, [1, 2, 3, 4], -100, 3, -1]
現在讓我們改變一個[2],看看會發生什么:
>>> print(a)
[1, 2, 55, 4]
>>> print(b)
[-1, [1, 2, 55, 4], -100, 3, -1]
因此,無論列表b是否有對列表a的引用,該值都已更新 – 但是無論b初始化為(對…的引用)列表a中的元素,似乎Python在初始化時擴展了值,因此按值(而不是通過引用)存儲元素,因此它的值顯然不會更新.
基本上,我找到了一個用例,在那里能夠很方便地定義例如b = [-1 a [2] -1],然后更新a [2],并且能夠計算在獲得(在這種情況下)b的值時將發出[2]的最新值[ 1].有沒有辦法在Python中做到這一點,而不必做b = [-1 a -1],然后閱讀b [1] [2](我想得到a [2]的值只是通過用b [1])?
總結
以上是生活随笔為你收集整理的在python中、列表中的元素可以是_在Python中存储一个列表的元素,在另一个列表中 – 通过引用?...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: apache http server 停
- 下一篇: ios yymodel 将字典转数组模型