xgqfrms™, xgqfrms® : xgqfrms's offical website of cnblogs! xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!

Python Lambda & Functional Programming

Python Lambda & Functional Programming

函数式编程

匿名函数

纯函数

高阶函数

# higher-order functions

def apply_twice(func, arg):
   return func(func(arg))

def add_five(x):
   return x + 5

print(apply_twice(add_five, 10))

# Pure function

def pure_function(x, y):
  temp = x + 2*y
  return temp / (2*x + y)

# Impure function

some_list = []
def impure(arg):
  some_list.append(arg)

#named function
def polynomial(x):
    return x**2 + 5*x + 4
print(polynomial(-4))

#lambda
print((lambda x: x**2 + 5*x + 4) (-4))

double = lambda x: x * 2
print(double(7))

Decorators

装饰器

def decor(func):
  def wrap():
    print("============")
    func()
    print("============")
  return wrap

def print_text():
  print("Hello world!")

decorated = decor(print_text)
decorated()


print_text = decor(print_text)
print_text()

https://code.sololearn.com/391/#py



refs

https://www.sololearn.com/Play/Python/

https://repl.it/languages/python3

https://repl.it/languages/python



©xgqfrms 2012-2020

www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!


posted @   xgqfrms  阅读(161)  评论(3编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2019-08-13 Enums & JavasScript & TypeScript
2019-08-13 javascript algorithm visualization
2019-08-13 React Native 三端同构
2018-08-13 Chrome & CORS & Fetch API All In One
2016-08-13 你所不知道的 JS: null , undefined, NaN, true==1=="1",false==0=="",null== undefined
2016-08-13 web 前端工具: Gulp 使用教程
2016-08-13 BB link All In One
点击右上角即可分享
微信分享提示