Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1116314
  • 博文数量: 188
  • 博客积分: 2267
  • 博客等级: 大尉
  • 技术积分: 1907
  • 用 户 组: 普通用户
  • 注册时间: 2011-08-01 11:17
文章分类

全部博文(188)

文章存档

2016年(16)

2015年(16)

2014年(12)

2013年(32)

2012年(45)

2011年(67)

分类: Python/Ruby

2016-05-24 16:47:09

str
srt.replace('old','new') 替换字符串


list
list[1] 通过索引访问list元素
list.append('abc') 添加元素到list
list.pop() 删除list最后一个元素
list.pop(2) 删除list第二个元素,从0开始数
list.sort() list排序


tuple
t= (1,) 创建一个单元素的元组


dict
d={'k1':'v1','k2':'v2','k3':'v3'}
d.keys() 查看字典key
d.values() 查看字典value值
d.items() 查看整个字典内容


set
s = set([key1,key2,key3])设置一个组合
s.add(key4) 增加元素key4
s.remove(key3) 删除元素key3


s1 & s2 取两个组合的交集
s1 | s2 取两个组合的并集




函数
abs 绝对值
cmp(x,y) 如果xy,返回1
int() 转换为整数
float() 转换为浮点数
str() 转换为字符串
unicode() 转换为unicode
bool() 转换为布尔值
enumerate 把一个list变成索引-元素对
range() 生成列表


生成一个list[0,1,4,......,100]
L=[]
for x in range(11):
    L.append(x*x)
print L
[x * x for x in range(11)]    


[m + n for m in 'abc' for n in '123']


g = (x * x for x in range(10))
g.next() 计算下一个元素值


def add(x,y,abs): 传入函数
    return abs(x) + abs(y)


map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。
map(lambda x: x*x,[1,2,3,4,5])   #[1, 4, 9, 16, 25]
reduce把一个函数作用在一个序列[x1, x2, x3...]上,这个函数必须接收两个参数,reduce把结果继续


和序列的下一个元素做累积计算
其效果就是:reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)
reduce(lambda x,y:x+y,[1,2,3,4,5]) #结果等于((((1+2)+3+4)+5)=15
filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素
filter(lambda x: x%2==0,[1,2,3,4,5]) #[2, 4]


sorted #按数字大小排序
sorted([list],key=abs) #按绝对值大小排序
sorted([list],key=str.lower) #忽略字母大小写排序
sorted([list],key=str.lower, reverse=True) #忽略字母大小写,逆向排序


sys
sys.path #sys模块的path变量


itertools
import itertools
cs = itertools.cycle('abc') #无限重复打印a,b,c
for c in cs:
    print c


ns = itertools.repeat('A',5) #重复打印A 5次
r = itertools.imap(lambda x: x*x, [1, 2, 3])
阅读(1218) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~