码迷,mamicode.com
首页 > 编程语言 > 详细

Python快速入门(3)

时间:2015-06-05 06:10:48      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:

数据结构:

 

列表的元素可变,用[] or list()创建。

元祖的元素不可变,用() or tuple()创建。

集合的元素不可重复,用{} or set()创建。

字典的存放K-V,用dict() or {} 创建。

 

del: 按照索引 删除数据结构元素 or  变量

===================================================

list:

list.append(x)  ===  a[len(a):]=[x]

list.extend(L)  ===  a[len(a):]=L

list.insert(i,x)   #指定位置插入

list.remove(x)

list.pop([i])

list.index(x)

 

可以把列表当作堆栈使用

使用collections.deque实现队列

技术分享
1 from collections import deque
2 queue = deque(["a","b","c"])
3 queue.append("d")
4 queue.popleft()
View Code

===================================================

函数式编程工具:filter() , map() , reduce()

 

filter(bool_func, sequence)返回一个sequence, 包括了给定序列中所有调用bool_func(item)后返回值为true的元素。(如果可能的话,会返回相同的类型)。如果该 序列 (sequence) 是一个 string (字符串)或者 tuple (元组),返回值必定是同一类型,否则,它总是list。例如,以下程序可以计算部分素数:

1 def f(x):return x%2!=0 and x%3!=0
2 filter(f,range(2,25))

 

map(function, seq1,[seq2...]) 为每一个元素依次调用 function(item) 并将返回值组成一个列表返回。例如,以下程序计算立方:

1 def cube(x):return x*x*x
2 map(cube,range(1,10))
1 seq = range(8)
2 def add(x,y):return x+y
3 map(add,seq,seq)
4 #ans [0,2,4,6,8,10,12,14]

 

reduce(function, sequence) 返回一个单值,它是这样构造的:首先以序列的前两个元素调用函数 function,再以返回值和第三个参数调用,依次执行下去。例如,以下程序计算 1 到 10 的整数之和:

1 def add(x,y):return x+y
2 reduce(add,range(1,11))

===================================================

 

Python快速入门(3)

标签:

原文地址:http://www.cnblogs.com/niceforbear/p/4553468.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!