1、函数:len()python
1:做用:返回字符串、列表、字典、元组等长度函数
2:语法:len(str)spa
3:参数: str:要计算的字符串、列表、字典、元组等code
4:返回值:字符串、列表、字典、元组等元素的长度blog
5:实例 :排序
5.一、计算字符串的长度:字符串
>>> s = "hello good boy doiido" >>> len(s) 21
5.二、计算列表的元素个数:generator
>>> l = ['h','e','l','l','o'] >>> len(l) 5
5.三、计算字典的总长度(即键值对总数):原型
>>> d = {'num':123,'name':"doiido"} >>> len(d) 2
5.四、计算元组元素个数:class
>>> t = ('G','o','o','d') >>> len(t) 4
2、sort函数
L.sort(cmp=None, key=None, reverse=False)
函数做用:
def f(a,b): return a-b
若是排序的元素是其余类型的,若是a逻辑小于b,函数返回负数;a逻辑等于b,函数返回0;a逻辑大于b,函数返回正数就好了
def f(a): return len(a)
key接受的函数返回值,表示此元素的权值,sort将按照权值大小进行排序
L = [{1:5,3:4},{1:3,6:3},{1:1,2:4,5:6},{1:9}] def f(x): return len(x) sort(key=f) print L
输出:
L = [{1:5,3:4},{1:3,6:3},{1:1,2:4,5:6},{1:9}] def f2(a,b): return a[1]-b[1] L.sort(cmp=f2) print L
输出:
list.reverse()
该方法没有返回值,可是会对列表的元素进行反向排序。
实例:
#!/usr/bin/python aList = [123, 'xyz', 'zara', 'abc', 'xyz']; aList.reverse(); print "List : ", aList;
输出结果:
List : ['xyz', 'abc', 'zara', 'xyz', 123]
4、列表推导式
能够用它来转换和过滤数据。
写法:
[表达式 for 变量 in 列表 if 条件]
转换数据:
从一到十转换成一到十的平方
>>> [x*x for x in range(1,11)] [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
过滤数据:
找出一到十中的偶数
>>> [x for x in range(1,11) if x%2==0] [2, 4, 6, 8, 10]
与字典搭配使用:
>>> dict([(x,x*x) for x in range(1,11)]) {1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81, 10: 100}
集合推导式:
若是列表推导式的结果里有不少重复项的话,可使用集合推导式,语法就是把列表推导式外面的方括号换为花括号
>>> {x for y in range(2,8) for x in range(y*2,51,y)} set([4, 6, 8, 9, 10, 12, 14, 15, 16, 18, 20, 21, 22, 24, 25, 26, 27, 28, 30, 32, 33, 34, 35, 36, 38, 39, 40, 42, 44, 45, 46, 48, 49, 50])
生成器推导式:
若把列表推导式的方括号换为圆括号,则返回结果是一个生产器
>>> (x*x for x in range(1,11)) <generator object <genexpr> at 0x1007ec2d0>
5、setdefault()
主要是获取信息,若是获取不到的时候就按照他的参数设置该值。
>>> a={} >>> a['key']='123' >>> print (a) {'key': '123'} >>> print (a.setdefault('key','456')) #显示a这个字典的'key'值的内容,由于字典有,因此不会去设置它 123 >>> print (a.setdefault('key1','456')) #显示a这个字典的'key1'值的内容,由于字典没有,因此设置为456了 456 >>> a {'key1': '456', 'key': '123'}