golang函数传参 VS python函数传参

近日在使用golang的过程中发现golang的函数传参和python的稍有区别,现总结记录如下:

golang函数传参

1. 当传数组时

会将整个数组全都复制后进行值传递(函数修改数组后并不会影响数组的值),当数组比较大时,每次传递数组都很占用资源,所以一般不用数组传参

2. 当传切片时

此时是引用传递(函数修改切片后,外面的切片也相应被改变),但由于函数只是进行引用传递,并不会复制一遍值,所以一般都使用切片传值

python函数传参

  1. python函数传参时,传递的是这个对象,变量就是关于对象的引用;
  2. 所以当参数为可变对象时,此时是引用传递,函数改变参数值时外面的值也会相应改变;
  3. 当参数为不可变对象时,此时是值传递,函数改变参数值时外面的值不会相应改变;

最后:
以上均为个人学习中总结,转载请注明出处;如有什么不对欠缺的地方,欢迎各位评论交流,共同学习

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值