zoukankan      html  css  js  c++  java
  • 【人生苦短 Python当歌】——Python函数式编程01

        对Python有一定了解的人应该知道,Python并不是一门函数式编程语言,而是一门支持多种范式的语言,这也使得在Python中也能实现函数式编程,

        对于学习到Python函数式编程的朋友,在这里推荐大家看一本名字叫《Python函数式编程》(Functional Programming in Python)从这本书中你应该能收获不少;

        怎么说呢,函数是Python内建支持的一种封装,我们通过把大段代码拆成函数,通过一层一层的函数调用,就把复杂的任务分解成简单的任务,这种就称为面向过程的程序设计,函数就是面向过程的程序设计的基本单元。

      首先看一个例子:计算斐波那契数列(任一个数都是前两个数之和的数字序列)

    1 fibs=[0,1]
    2 num =input('How many Fibonacci do you want?')
    3 for i in range(num-2):
    4     fibs.append(fibs[-2]+fibs[-1])
    5 print(fibs)

      从上面的例子应该能明白,程序员都很懒的,重复的问题应该以一种抽象的方式去解决;

      Python中函数主要学习以下几个方面:

    1.如何定义

    2.文档化函数

    3.参数魔法(参数传递、关键字参数、收集参数、参数收集逆过程)

    4.作业域

    5.递归

    6.函数式编程(lambda表达式、map函数、filter函数、reduce函数、partial、Groupby、Compose、Currying)

        map(func,seq [, seq.....])    

        filter(func,seq)  

        reduce(func,seq[, initial])   

        sum(seq)

        apply(func[,   args[,  kwargs]])

     1.Python中函数使用def语句定义

    def hello(name):
        return 'Hello.'+name+'!'

    2.文档化函数

    def square(x):
        'Calculates the square of the number x.'
        return x*x

      

  • 相关阅读:
    第9章 使用ssh服务管理远程主机。
    Linux下的网络管理工具—OpenNMS
    第8章 Iptables与Firewalld防火墙
    Linux下更好用的帮助命令—cheat
    第7章 使用RAID与LVM磁盘阵列技术
    收藏的博客
    linux下vi编辑器常用命令
    搜索引擎高级使用技巧
    七牛云配置二级域名
    软考-系统架构师备考知识(一)
  • 原文地址:https://www.cnblogs.com/freezhi/p/7208704.html
Copyright © 2011-2022 走看看