上一篇文章: Python经常使用运算符与经常使用内置函数
下一篇文章: Python类的定义与操做
语法:python
def 函数名(): 函数代码
实例:segmentfault
def printHello(): print("Hello world") #调用函数 printHello()
结果:函数
Hello world
help(函数名称):返回对应函数的帮助文档。在函数定义中的首行,用“”添加的就是帮助文档。code
实例:排序
def printHello(): "帮助文档:打印hello world" print("Hello world") help(printHello)
结果:文档
Help on function printHello in module __main__: printHello() 帮助文档:打印hello world
python采用应用传参,当参数类型为不可变类型时,对参数没有影响,当参数类型为可变时,可能会修改参数
实例:get
#定义b的默认值为3 def add(a,b=3): return a+b #调用函数 print(add(1,2)) print(add(1))
结果:io
3 4
实例:function
def A(): print("A函数调用") def B(): print("B函数调用了") print("A函数调用B函数前") B() print("函数A调用函数B后") #调用函数 A()
结果:import
A函数调用 A函数调用B函数前 B函数调用了 函数A调用函数B后
加了*的参数变量,还用元组来存储多个参数。加了**的参数,会用字典来存储多个参数
实例:
#定义b的默认值为3 #c为元组 #d为字典 def add(a,b=3,*c,**d): print("a=",a) print("b=",b) print("c=",c) print("d=",d) #调用函数 add(1,2) print("*"*30) add(1) print("*"*30) add(1,2,3,4,5) print("*"*30) add(1,2,3,4,5,name="mark",age=18)
结果:
a= 1 b= 2 c= () d= {} ****************************** a= 1 b= 3 c= () d= {} ****************************** a= 1 b= 2 c= (3, 4, 5) d= {} ****************************** a= 1 b= 2 c= (3, 4, 5) d= {'name': 'mark', 'age': 18}
用lambda关键词能够建立小型函数,省略了用def关键字来声明函数的标准步骤。
实例:
add=lambda a,b:a+b print(add(2,3))
结果:
5
实例:
def fun(a,b,lam): print("a=",a) print("b=",b) print("a+b=",lam(a,b)) add=lambda a,b:a+b fun(4,5,add)
结果:
a= 4 b= 5 a+b= 9
实例:
#简单列表排序很简单 ages=[18,19,17] print(ages) ages.sort() print(ages) #当列表内包含的是字典,怎么根据字典内的age排序呢? infors=[ {"name":"mark","age":18}, {"name":"sq","age":19}, {"name":"xman","age":17} ] print(infors) ''' 下面匿名函数等效于: def fun(x): return x["age"] ''' infors.sort(key=lambda x:x["age"]) print(infors)
结果:
[18, 19, 17] [17, 18, 19] [{'name': 'mark', 'age': 18}, {'name': 'sq', 'age': 19}, {'name': 'xman', 'age': 17}] [{'name': 'xman', 'age': 17}, {'name': 'mark', 'age': 18}, {'name': 'sq', 'age': 19}]
导入整个模块:import 模块名导入特定的函数:from 模块名 import 特定函数
使用as给函数重命名:from 模块名 import 特定函数 as 新名称
使用ad给模块冲命名 import 模块名 as 新名词
导入模块的全部函数:from 模块名 import *