python学习笔记--函数
Posted 行木辛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python学习笔记--函数相关的知识,希望对你有一定的参考价值。
函数定义:
def <函数名>(<参数(0个或多个)>): 函数体 return <返回值>
参数有非可选参数,和可选参数,可选参数放在参数列表的最后,可以为可选参数指定默认值。如下:
def fact(n,m=1): s = 1 for i in range(1,n+1): s *= i return s//m
>>> fact(10) 3628800 >>> fact(10,5) 725760
函数定义时可以设计可变数量参数,既不确定参数总数量。
def <函数名>(<参数>,*b):
函数体
return <返回值>
举例如下;
def fact(n,*b): s = 1 for i in range(1,n+1): s *= i for item in b: s *= item return s
结果如下:
>>> fact(10,3) 10886400 >>> fact(10,3,5,8) 435456000
函数的返回值,可以返回多个返回值,如下代码:
def fact(n,m=1): s = 1 for i in range(1,n+1): s *= i return s//m, n, m
结果如下:
>>> fact(10,5) (725760, 10, 5) >>> a,b,c=fact(10,5) >>> print(a,b,c) 725760 10 5
函数的局部变量和全局变量,如果函数内部使用的局部变量为组合数据类型且未创建,等同于全局变量。
>>> ls=["F","f"] >>> def func(a): ls.append(a) return >>> func("c") >>> print(ls) [‘F‘, ‘f‘, ‘c‘]
类似于C语言中的指针操作。如果函数内部又定义了一个同名的ls列表,那么ls就属于局部变量。
>>> ls = ["F", "f"] >>> def func(a): ls=[] ls.append(a) return >>> func("c") >>> print(ls) [‘F‘, ‘f‘]
lambda函数是一种匿名函数,即没有名字的函数,返回的是函数名,lambda函数用于定义简单的,能够在一行内表示的函数。
<函数名> = lambda<参数>:<表达式>
>>> f = lambda x,y:x+y >>> f(10,15) 25 >>> f = lambda:"hello" >>> print(f()) hello
lambda函数主要用作一些特定函数或方法的参数。
以上是关于python学习笔记--函数的主要内容,如果未能解决你的问题,请参考以下文章