Python函数参数传递
上一篇 /
下一篇 2015-09-22 19:29:34
/ 个人分类:Python学习
所有参数(自变量)在Python里都是按引用传递。如果你在函数里修改了参数,那么在调用这个函数的函数里,原始的参数也被改变了。例如:
#!/usr/bin/python# -*- coding: UTF-8 -*-# 可写函数说明defchangeme(mylist):"修改传入的列表"mylist.append([1,2,3,4]);print"函数内取值: ",mylistreturn# 调用changeme函数mylist=[10,20,30];changeme(mylist);print"函数外取值: ",mylist
传入函数的和在末尾添加新内容的对象用的是同一个引用。故输出结果如下:
函数内取值:[10,20,30,[1,2,3,4]]函数外取值:[10,20,30,[1,2,3,4]]
得到结论:如果不想参数被改变,就不要在函数中改变参数的值,返回一个计算后的值。同一个参数不要在多个函数中进行运算,除非业务必要。否则会出现同一个变量不知在哪个函数中改变了值。
收藏
举报
TAG: