python常用文件处理函数_1
1.range()函数
函数原型:range(start,end,scan)
参数含义:start:计数从start开始.默认是从0开始的,如range()等价于range(0,5)
end:计数到end结束但不包括end,如range(0,5)是[0,1,2,3,4]没有5
scan:每次跳跃的间距,默认为1.例如:range(0,5)等价于(0,5,1)
注释:range()和xrange()在python2里是两种不同的实现,但是在python3里,这种实现被移除了,保留了xrange()的实现,且将xrange()重新命名为range().
2.filter()函数:用于过滤一个list
函数原型:filter(function,sequence)[自定义函数名和需要过滤的列]
参数含义:function:一个函数 常与lambda配合使用,用到的有
lambda x: x.startswith('rgb_') and x.endswith('.png')
lambda x: x.endswith('.png')
lambda x: x.endswith(('.png','jpg'))
sequence:一个列表,list
示例:filenames = filter(lambda x: x.endswith(('.png','jpg')), filenames)
filenames = filter(lambda x: x.startswith('rgb_') and x.endswith('.png'), filenames)
3.lambda()函数
函数语法:lambda语句中,冒号前是参数,可以有多个,用逗号隔开,冒号右边的返回值
函数用途:匿名函数,对于单行函数,使用lambda可以省去定义函数的过程,让代码更加精简.
4.sorted()函数
函数原型:sorted(iterable,cmp=None,key=None,reverse=False)
参数含义:iterable:可迭代类型
cmp:用于比较的函数,比较什么由key决定
key:用列表元素的某个属性或函数作为关键字,迭代集合中的一项
reverse:排序规则.reverse=True降序,reverse=False升序,有默认值
返回值:是一个经过排序的可迭代类型,与iterable一样.
示例:filenames = sorted(filenames, key=lambda x:int(x[4:-4]))
filenames = sorted(filter(lambda x: x.endswith('.png'), filenames))
filenames = sorted(filenames, key=lambda x: int(x[11:-4]))
filenames = sorted(filter(lambda x: x.endswith('.png'),filenames),key = lambda x:int(x[4:-4]))