函数代码块以def关键字开头
由于隐式元组的机制,函数的返回值可以为多个对象
数据结构内的函数
函数和其他对象一样,可以存储在数据结构内部。例如可以创建 int-function 的字典。当 int 是代执行步骤的简写时,这就会派上用场。
def add(x,y):
return x+y
def sub(x,y):
return x-y
def mult(x,y):
return x*y
x=int(input('Input a number in 1,2,3'))
mapping={1:add,2:sub,3:mult} #store in dictionary
print(mapping[x])
print(mapping[x](6,5))
lamada表达式,即匿名函数,只使用一次
注:不写return关键字;如果函数体过于复杂,不适合用lambda表达式;lambda表达式必须为单行
#利用lambda函数按照值对字典排序
print(sorted(dic.items(),key=lambda item:item[0]))
#按照键的长度进行排序
print(sorted()dic.items(),key=lambda item: len(item[0]))
链式调用
s1=input('me:')
s2=s1.replace('吗',"")
s3=s2.replace('?','!')
函数中调用全局变量
如果在函数中要修改全局变量,需要使用关键字global进行声明
如果全局变量的名字和局部变量的名字相同,那么函数中使用的是局部变量