一、读取数据分割并放入list中
使用场景:一般开发中经常会从本地文件中读取数据,并放入list中,
例如:10086,10010,110,120,999
>>> str = '10086,10010,110,120,999'
>>> data = [x for x in str.strip().split(',')]
>>> print data
['10086', '10010', '110', '120', '999']
>>>
二、函数str.format()格式化字符串
使用场景:一般用在变量与字符串结合
用法1:
>>> name = 'mile'
>>> age = '2'
>>>> str = 'name:{},age:{}'.format(name,age)
>>> print str
name:mile,age:2
用法2:
>>> data = ['mile',2]
>>>> str = "My son's name is {0[0]}, this year {0[1]} years old, had {0[1]} birthday".format(data)
>>> print str
My son's name is mile, this year 2 years old, had 2 birthday
用法3:
填充与对齐
填充常跟对齐一起使用
^、<、>分别是居中、左对齐、右对齐,后面带宽度
:号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充
>>> '{:0^8}'.format('86')
'00086000'
>>> '{:0>4}'.format('86')
'0086'
>>> '{:0<4}'.format('86')
'8600'
用法4:
精度常跟类型f一起使用
>>> '{:.3f}'.format(3.141592653589793238462643383249901429)
'3.142'
看例子这里还自动四舍五入了
用法5:
与进制一起使用b、d、o、x分别是二进制、十进制、八进制、十六进制。
>>> '{:b}'.format(6)
'110'
>>> '{:d}'.format(110)
'110'
>>> '{:o}'.format(110)
'156'
>>> '{:x}'.format(110)
'6e'
用法6:
可以用来分隔数字的千位分隔符号
>>> '{:,}'.format(2342342342342342342)
'2,342,342,342,342,342,342'
三、去除字符串左边活着右边的字符str.rstrip() str.lstrip()
例子1:
>>> str = '000000099999999000000'
>>> str.rstrip('0')
'000000099999999'
>>> str.lstrip('0')
'99999999000000'
例子2:不添内容就是模式去掉空格
>>> str = ' i have a dream '
>>> str.lstrip()
'i have a dream '
四、list排序
>>> data = [1,4,2,5,3,7,0,2,4]
>>> data.sort(key=lambda x :x)
>>> print data
[0, 1, 2, 2, 3, 4, 4, 5, 7]
python list 中说字符串的话是按照第一个来排序的
>>> data = ['1','9','0','2','4','8']
>>> data.sort(key = lambda x :x)
>>> print data
['0', '1', '2', '4', '8', '9']
>>> data = ['1','9','0','200','49','8']
>>> data.sort(key = lambda x :x)
>>> print data
['0', '1', '200', '49', '8', '9']
五、lambda 与 filter结合过滤
上面用lambda函数来排序,下面使用lambda与filter函数过滤
例子1:过滤该出list中大于5的
>>> data = [1,9,0,200,49,8]
>>>> data = filter(lambda x:x>5,data)
>>> print data
[9, 200, 49, 8]
例子2:如果filter的参数是None,就删掉0的,或者是False的,留下不是0的与true
>>> data = [1,9,0,200,49,8,0,-2,False,True]
>>> data = filter(None,data)
>>> print data
[1, 9, 200, 49, 8, -2, True]
六、map()函数
这个具体干啥的我语文差说不清,直接上代码大家看吧
例子1:
>>> data = [1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> def f(x):
... return x+1
...
>>> print map(f,data)
[2, 3, 4, 5, 6, 7, 8, 9, 10]
从代码来看map函数把data中每个元素都按照f方法+1
例子2: map() 与lambda结合使用
>>> data = [1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> data = map(lambda x:x+3,data)
>>> print data
[4, 5, 6, 7, 8, 9, 10, 11, 12]
例子3:
输入:[‘adam’, ‘LISA’, ‘barT’]
输出:[‘Adam’, ‘Lisa’, ‘Bart’]
>>> def format_name(s):
... return s[0].upper()+s[1:].lower()
...
>>> print map(format_name,['adm','LISA','braT'])
['Adm', 'Lisa', 'Brat']
七、reduce()函数
例子1:
>>> reduce(lambda x,y:x*y,[1,2,3,4,5])
120
结果是从这么得到的:1*2*3*4*5 = 120
八、切割数组
Data[:size] or Data[size:]
>>> data = ['1','2','4','5','6']
>>> print data[:3]
['1', '2', '4’]
>>> print data[3:]
['5','6']
九、re.sub 正则替换
re.sub是个正则表达式方面的函数,用来实现通过正则表达式,实现比普通字符串的replace更加强大的替换功能
例子1:
>>> str = 'hello 123 world 456'
>>> import re
>>>> replaceStr = re.sub('\d+','222',str)
>>> print replaceStr
hello 222 world 222
未完待续。。。。。。