【python】 入门 - 函数式编程
2015-06-25 21:15
597 查看
函数式编程的一个特点就是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001386819196283586a37629844456ca7e5a7faa9b94ee8000
函数
定义函数
高级特性
切片
Slice
迭代
函数式编程
函数式编程的一个特点就是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数
Python对函数式编程提供部分支持。由于Python允许使用变量,因此,Python不是纯函数式编程语言。
map/reduce
reduce
IO编程
读文件
中文注释
TCP编程
函数
定义函数
defmy_abs(x): ifx>=0: returnx else: return-x result=my_abs(10) print(result)
高级特性
切片
Slice
L[:3]
迭代
d={'a':1,'b':2,'c':3} forkeyind: printkey#注意这个缩进代替了{}
forchin'ABC':
printch
forx,yin[(1,1),(2,4),(3,9)]:
printx,y
函数式编程
函数式编程的一个特点就是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数
Python对函数式编程提供部分支持。由于Python允许使用变量,因此,Python不是纯函数式编程语言。
defadd(x,y,f):
returnf(x)+f(y)
printadd(-5,6,abs)
结果:11
把函数作为参数传入,这样的函数称为高阶函数,函数式编程就是指这种高度抽象的编程范式。
map/reduce
如果你读过Google的那篇大名鼎鼎的论文“MapReduce:SimplifiedDataProcessingonLargeClusters”,你就能大概明白map/reduce的概念。
map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。[/code]
reduce
把一个函数作用在一个序列[x1,x2,x3...]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算,其效果就是:
#map
deff(x):
returnx*x
printmap(f,[1,2,3,4,5,6,7,8,9])
#reduce
deffn(x,y):
printx,y,x*10+y
returnx*10+y
printreduce(fn,[1,3,5,7,9])
filter()也接收一个函数和一个序列。和
map()不同的时,
filter()把传入的函数依次作用于每个元素,然后根据返回值是
True还是
False决定保留还是丢弃该元素。[/code]
defis_odd(n):
returnn%2==1
printfilter(is_odd,[1,2,4,5,6,9,10,15])
IO编程
读文件
f=open('D:\logs\log.txt','r')
printf.read()
写文件
f=open('/Users/michael/test.txt','w')
f.write('Hello,world!')
f.close()
中文注释
#
##-*-coding:utf-8-*-
__author_='robin'
#中文注释
print"HelloWorld!"
必须放在第一行
TCP编程
#
##-*-coding:utf-8-*-
#导入socket库:
importsocket
#创建一个socket:
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#建立连接:
s.connect(('m.y**t**.com',80))
whileTrue:
data=s.recv(1024)
相关文章推荐
- 用Python和Pygame写游戏-从入门到精通(7)
- 用Python和Pygame写游戏-从入门到精通(8)
- 用Python和Pygame写游戏-从入门到精通(6)
- 用Python和Pygame写游戏-从入门到精通(5)
- 用Python和Pygame写游戏-从入门到精通(4)
- 用Python和Pygame写游戏-从入门到精通(3)
- 用Python和Pygame写游戏-从入门到精通(2)
- 用Python和Pygame写游戏-从入门到精通(1)
- python语法之继承
- python中的__new__和__init__
- Python的print中国输出对齐问题
- Python 装饰器学习以及实际使用场景实践
- Python——条件分支
- python matplotlib 画心形线
- 简明 Python 编程规范
- 如何用python发送邮件
- python-rrdtool
- Python - 杨辉三角
- Python 学习笔记12
- 【python】 入门 搭建环境