程序是由变量和函数组成的,变量是数据的载体,通过变量传入函数,完成对数据的处理后,返回新的变量。
对于C/C++而言,程序员可以明确指定传递方式的,主要有:值传递、指针传递、引用传递。
对于python而言,一切传参皆是引用传递。但是将变量分为可变对象和不可变对象。如果函数收到的是一个可变对象(dict、list、set、bytearry)的引用,就能修改对象的原始值,相当于‘传引用’来传递对象。如果函数收到的是一个不可变对象(int、double、str、tuple、bytes)的引用,就不能直接修改原始对象,相当于通过‘值传递’来传递对象。
局部变量的生存范围:
对于c/c++而言,代码块结束后,代码块内申请的局部变量则会被销毁或析构。代码块是大括号(也叫"花括号",即"{ ... }")包含的代码。
对于python而言,函数执行结束后,函数内申请的局部变量才会被销毁。