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