PHP前端开发

详解Python函数的使用

百变鹏仔 2小时前 #Python
文章标签 详解

1.函数的基本定义


def 函数名称(参数)         执行语                 return 返回值

def : 定义函数的关键字;

函数名称:顾名思义,就是函数的名字,可以用来调用函数,不能使用关键字来命名,做好是用这个函数的功能的英文名命名,可以采用驼峰法与下划线法;

参数:用来给函数提供数据,有形参和实参的区分;

执行语句:也叫函数体,用来进行一系列的逻辑运算;

立即学习“Python免费学习笔记(深入)”;

返回值:执行完函数后,返回给调用者的数据,默认为None,所以没有返回值时,可以不写return。

 

2.函数的普通参数

最直接的一对一关系的参数,如:


def fun_ex(a,b):            #a,b是函数fun_ex的形式参数,也叫形参    sum=a+b    print('sum =',sum)fun_ex(1,3)                  #1,3是函数fun_ex的实际参数,也叫实参#运行结果sum = 4

 

3.函数的默认参数

给参数定义一个默认值,如果调用函数时,没有给指定参数,则函数使用默认参数,默认参数需要放在参数列表的最后,如:


def fun_ex(a,b=6):    #默认参数放在参数列表最后,如b=6只能在a后面    sum=a+b    print('sum =',sum)fun_ex(1,3)fun_ex(1)#运行结果sum = 4sum = 7

 

4.函数的动态参数

不需要指定参数是元组或字典,函数自动把它转换成元组或字典,如:

#转换成元组的动态参数形式,接受的参数需要是可以转成元组的形式,就是类元组形式的数据,如数值,列表,元组。def func(*args):    print(args,type(args))func(1,2,3,4,5)date_ex1=('a','b','c','d')func(*date_ex1)#运行结果(1, 2, 3, 4, 5) <class>('a', 'b', 'c', 'd') <class>动态参数形式一</class></class>
#转换成字典的动态参数形式,接收的参数要是能转换成字典形式的,就是类字典形式的数据,如键值对,字典def func(**kwargs):    print(kwargs,type(kwargs))func(a=11,b=22)date_ex2={'a':111,'b':222}func(**date_ex2)#运行结果{'b': 22, 'a': 11} <class>{'b': 222, 'a': 111} <class>动态参数形式二</class></class>
#根据传的参数转换成元组和字典的动态参数形式,接收的参数可以是任何形式。def func(*args,**kwargs):    print(args, type(args))    print(kwargs,type(kwargs))func(123,321,a=999,b=666)date_ex3={'a':123,'b':321}func(**date_ex3)#运行结果(123, 321) <class>{'b': 666, 'a': 999} <class>() <class>{'b': 321, 'a': 123} <class>动态参数形式三</class></class></class></class>

5.函数的返回值

运行一个函数,一般都需要从中得到某个信息,这时就需要使用return来获取返回值,如:

def fun_ex(a,b):    sum=a+b    return sum      #返回sum值re=fun_ex(1,3)   print('sum =',re)#运行结果sum = 4

 

6.lambda表达式

用来表达简单的函数,如:

#普通方法定义函数def sum(a,b):    return a+bsum=sum(1,2)print(sum)#lambda表达式定义函数myLambda = lambda a,b : a+bsum=myLambda(2,3)print(sum)#运行结果5


7.内置函数

 1)内置函数列表

  Built-in Functions  
abs()dict()help()min()setattr()
all()dir()hex()next()slice()
any()pmod()id()object()sorted()
ascii()enumerate()input()oct()staticmethod()
bin()eval()int()open()str()
bool()exec()isinstance()ord()sum()
bytearray()filter()issubclass()pow()super()
bytes()float()iter()print()tuple()
callable()format()len()property()type()
chr()frozenset()list()range()vars()
classmethod()getattr()locals()repr()zip()
compile()globals()map()reversed()__import__()
complex()hasattr()max()round() 
delattr()hash()memoryview()set()