python中支持自定义函数
- 以def开头,后接标识符名称及圆括号(),圆括号内部包含参数
- 圆括号后以冒号起始,下一行缩进
- 以return[表达式]结束
# 自定义函数
def printme(str):
print(str)
return
# 调用函数1
printme("我调用我自己")
printme作为自定义函数,str为参数,自定义函数内部的print(str)执行将参数打印的操作,最后以return结尾。
def中的参数分不可变类型与可变类型
- strings\tuples\numbers是不可变类型
- list\dict等是可变类型
# 不可变类型
def ChangeInt(a):
a = 10
b = 2
ChangeInt(b)
print(b) # 结果是 2
可以看到b作为一个numbers,在b传入参数传入后不发生改变。
# 可变类型1
def changec(c):
c[2] = 1
return
cc = [3, 3, 3]
changec(cc)
print(cc)
可以看到cc作为一个list,在传入c后发生了改变,结果为3,3,1。这里做了一个实验当内部函数c[2]=1改为c=[1, 1, 1]时,函数不发生改变,小伙伴们感兴趣可以解释下为