python篇3_函数

来源:互联网 发布:dw软件怎么使用 编辑:程序博客网 时间:2024/06/05 15:30

1.写法:

def funcName(param):【def关键字+函数名+括号参数+冒号】

2. 几种不同的参数的定义和使用

a. 关键字参数比如我定义了函数say(name,word),在调用此函数的时候,say(word = 'hello',name = 'Damon'),这样准确的对应实参和形参,这样可以避免在参数较多的时候将参数混淆,参数顺序也不怕颠倒。

b. 默认参数:定义函数的时候,指定参数的默认值:say(name = 'Damon',word = 'hello'),区别关键字参数

c. 收集参数定义函数的时候,不知道函数具体有几个参数:def myFunc(*params);在形参前面加上一个*,形参变成一个可以包含多个不同元素的元组,通过对元组的访问获取具体的参数;

3.函数生命周期

a. global关键字:对于全局变量,python中如果想要更改全局变量param,需要对本地的变量使用关键字global进行声明【因为此时本地变量和全局变量名字相同】:global param,然后在来更改;ps:访问全局变量不需要声明

b 函数嵌套在函数里面再重新定义函数,被定义的函数只能在父函数里面被调用,这个是java没有的,要区别和函数调用的不同

c. lambda表达式

   i. 写法:关键字 + 形参+冒号+返回值    eg:lambda x : x % 2 【对传入的参数模2取余】

   ii.适用场合:一些适用次数较少的函数,建议使用lambda表达式

   iii.可以对lambda表达式赋值 eg: func_add = lambda x : x+1

4.两个重要内置函数介绍:

filter()

filter(...)
    filter(function or None, sequence) -> list, tuple, or string【返回值】
    
    Return those items of sequence for which function(item) is true.  If
    function is None, return the items that are true.  If sequence is a tuple

    or string, return the same type, else return a list.

举例:filter(lambda x : x % 2,range(10)) ,【过滤出0到9之间的奇数】

理解:把sequence里面的item通过function运算,返回结果为True的sequence中的item,即true是返回依据

map()

 map(function,sequence[, sequence, ...]) -> list
    
    Return a list of the results of applying the function to the items of
    the argument sequence(s).  If more than one sequence is given, the
    function is called with an argument list consisting of the corresponding
    item of each sequence, substituting None for missing values when not all
    sequences have the same length.  If the function is None, return a list of
    the items of the sequence (or a list of tuples if more than one sequence).

举例:map(lambda x : x*x,range(10))【对0到9之间的数字进行自乘】

理解:sequence作为集合A,函数关系是function,返回集合B

5.递归和迭代

a.递归:递归就是函数自己调用自己实现循环,要有返回条件,不然就死循环;采用的分治,把问题划分到最小单元,最小单元触发返回条件,再逐层返回到顶层,典型的递归是二分查找法;

b.迭代:迭代就是函数一段代码被反复执行实现循环,特点是循环中参与运算的变量也是保存结果的变量








原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 电脑连接不上网络怎么办 电脑上没网络了怎么办 手机返回键不好使怎么办 笔记本无线网连接受限怎么办 魅族打电话图标没有了怎么办 京东价格保护后发票怎么办 淘宝未满十八岁怎么办 SVN提交时代码冲突怎么办 京东自营没货了怎么办 京东下了单 没货怎么办 万达广场购物卡怎么办 京东白条没额度怎么办 京东退款还收到货怎么办 退货不想要货了怎么办 安装微擎创建数据库失败怎么办 tp文件损坏或丢失怎么办 手机QQ启动有问题应该怎么办 微信网页版页面巨大怎么办 魔兽军团烹饪食谱扔了怎么办 赴港旅游网上签证怎么办了? 美团商家入住没有营业执照怎么办 团购房子不想要怎么办 乐视液晶屏坏了怎么办 wifi盒子插上网线然后怎么办 在泰国手机坏了怎么办 朋友在泰国手机关机怎么办 qq上转账转错了怎么办 扣扣转账转错了怎么办 到付快递签收了怎么办 京东白条消费了怎么办 确认收货点错了怎么办 小米6后盖缝隙大怎么办 苹果6splus电池不耐用怎么办 苹果一朵云加箭头下载不了怎么办 苹果8p信号不好怎么办 苹果8p像素不好怎么办 美版iphonex有锁怎么办 苹果8x突然黑屏怎么办 苹果6s无法激活怎么办 苹果6sp激活出错怎么办 小米4c触屏失灵怎么办