1. 函数定义
def <名字> (arg1, arg2, arg3)
<语句>
return <值>
可以没有return,进行到末尾自动退出
2. 作用域
大多数:作用于查找从局部>全局>内置
global把名字映射到包含它的模块的作用域中,即:可在函数内部声明一个作用在全局的变量global x
X = 99 #全局的
def fun(Y):
z = X + Y #Y 和 z 是局部的,全局X可以直接被引用
return z
>> def fun(x, y) :
x = 2 #只改变局部名字
y[0] = 'a' #在该位置改变共享的对象
和C++中参数引用不同。
不可变参数:整数和字符串,通过对象引用(赋值)传递,类似拷贝,因为整数和字符串是不可改变的
可变参数:列表和字典,类似指针传递
4. 返回值
return x,y #实际上是返回的元组