python 函数与模块

1,定义函数

  def 函数名(参数表):

    函数语句

    return 发回值

  参数和返回值都可以省略

def hello():
    print("Xyf 无敌")
hello()

 

 

 2,参数传递

def add(a,b):
    return a+b
print(add('a','b')) #顺序依次传递
print(add(b='a',a='b')) #按形参赋值

def solve(a):
    a[0]='abc'
x=[1,2]
solve(x)
print(x)

 

 

 对于可变对象,列表,字典等,若在函数中修改形参,通过共享引用,实参也会变

如果不希望实参改变,可以传递拷贝的列表

def solve(a):
    a[0]='abc'
x=[1,2]
solve(x[:])
print(x)

def solve(a=1): #可以为a设置默认值,若调用时未提供实参,则为默认值
    a[0]='abc'
x=[1,2]
solve(x[:])
print(x)

python 允许函数内部嵌套函数

  但是内部的函数只允许内部使用

3,lambda函数

  定义一些简单的函数

add=lambda a,b:a+b
print(add(1,2))

 

 

 4,函数列表

add=lambda a,b:a+b
def solve(a):
    return a*a
d=[add,solve]
print(d[0](1,2))
print(d[1](5))

 5,函数字典

add=lambda a,b:a+b
def solve(a):
    return a*a
d={'求和':add,'平方':solve}
print(d['求和'](1,2))
print(d['平方'](5))

 

posted @ 2020-11-07 15:21  Kaiser-  阅读(173)  评论(0编辑  收藏  举报