在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])?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值