
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): x.append (3) print "global",ID(x) x = [8] print "local ",ID(x) return xx=[1,5]print "global",ID(x)y= foo(x)print "global",ID(x)print xprint y
和输出
global 140646798391920global 140646798391920local 140646798392928global 140646798391920[1,5,3][8]
如您所见,变量x的地址在您 *** 作时保持不变,但在使用=时会发生变化.函数内部的变量赋值使变量本地化为函数
总结以上是内存溢出为你收集整理的append方法如何在python中工作?全部内容,希望文章能够帮你解决append方法如何在python中工作?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)