首页 > 代码库 > python学习笔记2---函数

python学习笔记2---函数

函数主要是为了代码复用。

函数分为两种:系统库预定义函数,自定义函数。

函数格式:

def functionName():

  statement

函数调用:

funtionName()

函数的参数:形参和实参

形式参数:在定义函数的时候的参数列表里的参数,简称形参。

实际参数: 在调用函数的时候的参数列表里的参数,简称实参。

实参和形参是一一对应的。

默认参数: 在定义函数的时候,给形参赋初始值。

默认参数要注意参数顺序。默认参数一般都是在后面部分。

 

函数的变量

全局变量和局部变量

局部变量:在函数体内定义的变量。只能在函数体内使用,不允许函数体外使用。

全局变量:在函数体外定义的变量。既可以在函数体内也可以在函数体外使用。

如果全局变量和局部变量同名的时候:

在函数内部使用的是函数体内的局部变量。

如果在函数体外使用的时候,使用的全局变量。

在函数体内定义一个全局变量:

global y

y=200

 

函数返回值:

函数必须有返回值。有三种情况 :

1.return a

2.return ;默认返回None

3缺省情况。默认返回一个None.

 

函数的冗余参数:

多类型传值和传值冗余。

多类型传值:

传递元组: f(*t)

传递字典:f(**t)

key 和函数的形参要保持名称一致。

传值冗余:

向函数传递多余的实参:

def function(x,*args):

    print x

    print args

---传递元组

 

def function(y="a", **args):     

    print y

    print args

---传递字典

 

def f(x,*args, **kwargs):

    print x

    print args

    print kwargs

---传递元组和字典

 

lambda函数:

匿名函数:快速定义单行的最小函数。

def f(x,y):

  return x*y

对应的lambda表达式:

g=lambda: x,y: x*y

g(2,3)

lambda的基础:

分号前面的是参数,多个参数之间用逗号分割。冒号右边的返回值。

 

switch语句:

在python中没有switch关键字。需要借助字典来实现。

技术分享

 

 内置函数:

绝对值abs,最小值min,最大值max

len(), divmod(),pow(),round()

callable() ,isinstance(),cmp(),rang(),xrang()

type(),int(), long(),list(),complex()...

字符串内置函数:(下面的str代表str对象)

str.capitalize() :首字母大写

str.replace(sourceStr, destStr[,count]):把sourStr替换成destStr

  str.split(分隔符,最大切割次数n) : 把str用分隔符分割,最多切成n块。

string 模块import后,可以使用string.replace(s,old,new,n)

filter(function,sequence), zip(),map(),reduce():  这filter,map,reduce函数的第一个参数都是function.

注意区分zip和map,对与不同长度的list的处理结果不同。

zip按照最小处理。map会把空的补上None。

 

python学习笔记2---函数