现在,补充一下昨天函数的话题

传入函数的参数是不可变参数

从本质上来分析一下变量在函数内部和外部的不同,程序运行时:

  1. 先执行了x = 1 这一语句,此时我们说 x 指向了对象1,接着打印x的值,即1;
  2. 接着执行函数change(x),程序进入到函数内部,此时,执行语句 x=2,相当于在函数内部再创建了一个x变量,然后把这个x变量指向新的对象2,函数内外这两个变量的地址不同,因此函数内外的两个变量是独立的,函数内变量发生改变不会影响函数外具有相同名字的变量。

7 - python函数(补充)
7 - python函数(补充)

传入参数是可变参数

当传入参数是一个列表时,看下面代码打印结果可知,函数内外的 x 的地址一样,即两个变量x均指向同一列表,如下面第二幅图所示,所以,执行完函数内部语句后,函数外的变量也跟着函数内的变量一起变化
7 - python函数(补充)

7 - python函数(补充)

相关文章:

  • 2021-12-12
  • 2021-09-25
  • 2018-08-29
  • 2021-10-16
  • 2021-06-11
  • 2021-08-30
  • 2021-11-20
  • 2021-10-11
猜你喜欢
  • 2021-05-29
  • 2021-09-22
  • 2021-04-15
  • 2022-01-07
  • 2021-04-02
  • 2021-05-13
  • 2021-11-26
相关资源
相似解决方案