今天我们来学习新的一篇吧,那便是“函数(function)”
我们用def来定义一个函数,以案例说话。
>>> def name(x):          #定义一个“name”的函数
...     print x + ",是一个帅哥!"           #加号就当作一个连接符了,连接x跟后面的字符串
...
>>> name("二狗哥")
二狗哥,是一个帅哥!
>>>
>>>#求三角形面积。
>>> def sanjiaoxing(di,gao):
...     s = di * gao / 2
...     return s
...
>>> sanjiaoxing(31,54)
837
>>>#再来一个小案例教大家认识一下啥事局部作用于跟全局作用域,其实跟别的语言一样,就是全局变量跟局部变量而已。
>>> a = 2
>>> b = 4
>>> def test(b):
...     test = a * b
...     return test          #return是返回的意思,返回test
...
>>> #大家猜一下输出多少?
>>> print test(12)
24
>>>#def 里面的是叫做局部变量,而def外面的是全局变量。局部的只能在局部用,当然了,局部的也可以调用全局的,但是全局是不能调用局部。所以打印出来是24,即2*12
>>>
>>> a = 2
>>> b =[12,23]
>>> def test(a,b):
...     a = 5
...     b[0] = 45
...     print a,b
...
>>> test(a,b)
5 [45, 23]
>>>#上面的一个案例你明白了吗?明白了的话,那就是真的懂了。
再给大家传授一个函数。那便是lambda函数
lambda只是一个表达式,函数体比def简单很多。其主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。
lambda是起到一个函数速写的作用。允许在代码内嵌入一个函数的定义。
用lamdba会比def定义的函数来的简单多。来看一下下面的案例。
>>>def python(x,y,z):
.......     return x+y*z
.......
>>>python(1,2,3)
7
如果用lambda的话是这样的
>>>s = lambda x,y,z:x+y*z  #直接一行就解决了,有没有很高效,在编程中能用一行解决的,就绝对不要用多行解决。
7
>>>
函数的话相对还是比较简单,大家有不会的就尽量问。

一起入门python6之函数的更多相关文章

  1. Python入门篇-生成器函数

    Python入门篇-生成器函数 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.生成器概述 1>.生成器generator 生成器指的是生成器对象,可以由生成器表达式得到, ...

  2. Python入门篇-匿名函数

    Python入门篇-匿名函数 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.匿名函数概述 1>.什么是匿名函数 匿名,即没有名字 匿名函数,即没有名字的函数 2>. ...

  3. es6入门3--箭头函数与形参等属性的拓展

    对函数拓展兴趣更大一点,优先看,前面字符串后面再说,那些API居多,会使用能记住部分就好. 一.函数参数可以使用默认值 1.默认值生效条件 在变量的解构赋值就提到了,函数参数可以使用默认值了.正常我们 ...

  4. Python趣味入门9:函数是你走过的套路,详解函数、调用、参数及返回值

    1.概念 琼恩·雪诺当上守夜人的司令后,为训练士兵对付僵尸兵团,把成功斩杀僵尸的一系列动作编排成了"葵花宝典剑法",这就是函数.相似,在计算机世界,一系列前后连续的计算机语句组合在 ...

  5. python入门练习题3(函数)

    1.写函数: 如有以下两个列表 l1 = [...] l2 = [] 第一个列表中的数字无序不重复排列,第二个列表为空列表 需求: 取出第一个列表的最小值 放到第二个列表的首个位置, 取出第一个列表的 ...

  6. 一起入门python7之函数参数

    上一节课简单的讲了一下函数.那么今天来给大家讲一下函数参数.用案例说话哈.上一节课只是让大家有比较简单的了解,那么这节我们来细化一下哈.>>>def hello(x):        ...

  7. 2016.9.13 JavaScript入门之六基础函数

    1.Math.random()函数: 2.math.floor(x)返回小于参数x的最大整数,即对浮点数向下取整. 例如:random本身只产生(0~1)之间的小数,random()*10 意思是产生 ...

  8. swift:入门知识之函数与闭包

    1.swift中使用关键字func来声明和定义一个函数.调用函数使用它的名字加上小括号中的参数列表. 2.swift使用->方向符号分隔参数的名字和返回值类型 3.swift使用元组(tuple ...

  9. ES6入门之Generator函数

    Generator Generator函数是ES6提供的一种异步编程解决方案,Generator函数是一个状态机,封装了多个内部状态. 执行Generator函数会返回一个遍历器对象,也就是说,Gen ...

随机推荐

  1. Unicode 与 UTF 字符标准

    Unicode 国际字符标准(UCS)是一个字符编码系统,它被设计用来支持世界各国不同语言书面文体之间的数据交换.处理以及显示.        Unicode用两个字节表示一个字符.前127个字符与A ...

  2. Mac安装Brew

    安装命令如下:curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local --strip ...

  3. 菜鸟疑问之新建网站与新建web应用程序区别

    学习asp.net一定少不了这困惑:新建网站与新建web应用程序有什么区别? 新建web应用程序 新建网站 呵呵,其实从名字看一个是webApplication,一个是webSite.名字不同罢了? ...

  4. thinkphp succes error跳转模板 设置

    执行成功 换成自己想要的模块 下面的路径是默认的模板\ThinkPHP\Tpl\dispatch_jump.tpl D:\wamp\www\ThinkPHP\Tpl\dispatch_jump.tpl ...

  5. firefox如何卸载插件plugins和临时文件夹

    下载原版的 英文版的 firefox 会看到 openH264 video codec Plugin和microsoft DRM (digit rightcopy manager 数字版权管理)等等插 ...

  6. 源码编译安装 screen

    本文转自:http://blog.163.com/oracle_wwf/blog/static/213030127201211191481101/ [root@web1 soft]# wget ftp ...

  7. ZOJ3802 Easy 2048 Again (状压DP)

    ZOJ Monthly, August 2014 E题 ZOJ月赛 2014年8月 E题 http://acm.zju.edu.cn/onlinejudge/showProblem.do?proble ...

  8. django学习<二>:连接数据库

    发现假如没有很迫切的实际需求或者外界的压力的话,我这种人就很容易偷懒,之前看了一篇比较权威的谈django的文章,里面列举支持的数据库只有四种, 可是我熟悉的数据库只有sqlserver,然后就又怠工 ...

  9. [译]JavaScript:将字符串两边的双引号转换成单引号

    原文:http://ariya.ofilabs.com/2012/02/from-double-quotes-to-single-quotes.html 代码的不一致性总是让人发狂,如果每位开发者都能 ...

  10. 响应性web设计实战总结(二)

    响应性web设计实战总结(二) 阅读目录 背景知识: Gulp-less安装及配置如下 对响应性web总结,之前总结过2篇文章:可以看如下: http://www.cnblogs.com/tugenh ...