加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

append方法如何在python中工作?

发布时间:2020-12-20 12:07:40 所属栏目:Python 来源:网络整理
导读:我学习编程语言,测验问题和解决方案是这样的: def foo(x): x.append (3) x = [8] return xx=[1,5]y= foo(x)print xprint y 为什么打印如下: [1 5 3 ][8] 为什么x不等于8? 解决方法 另外两个答案很棒.我建议你试试id来获取地址. 请参阅以下示例 def foo(x)
我学习编程语言,测验问题和解决方案是这样的:

def foo(x):
   x.append (3)
   x = [8]
   return x

x=[1,5]
y= foo(x)
print x
print y

为什么打印如下:

[1 5 3 ]
[8]

为什么x不等于8?

解决方法

另外两个答案很棒.我建议你试试id来获取地址.

请参阅以下示例

def foo(x):
   x.append (3)
   print "global",id(x)
   x = [8]
   print "local ",id(x)
   return x

x=[1,5]
print "global",id(x)
y= foo(x)
print "global",id(x)
print x
print y

和输出

global 140646798391920
global 140646798391920
local  140646798392928
global 140646798391920
[1,5,3]
[8]

如您所见,变量x的地址在您操作时保持不变,但在使用=时会发生变化.函数内部的变量赋值使变量本地化为函数

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读