map函数:将列表中的所有元素做同一个操作后形成新的列表
iems = [1,2,3,4,5]
squared = list(map(lambda x: x**2,items)
它等同于用For Loop将item的元素都输入到 x**2函数中 在输出存到squared中去
进阶用法:
def multiply(x):
return(x*x)
def add(x):
return(x+x)
funcs = [multiply,add]
for i in range(5):
value = list(map(lambda x: x(i), funcs))
print(value)
#output:
#[0,0]
#[1,2]
#[4,4]
#[9,6]
#[16,8]
filter函数:对列表中的所有元素做一个判断,若符合条件则留下,不符合就去除
number_list = range(-5, 5)
less_tahn_zero = list(filter(lambda x: x < 0, number_list))
print(less_than_zero)
#output: [-5,-4,-3,-2,-1]
即当filter函数中的第一个参数为True时保留元素,False时去除元素
map与filter的第一个参数是函数名(即函数内存地址)而不是运行该函数(不能加括号)
reduce 函数会对参数序列中元素进行累积。
函数将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给 reduce 中的函数(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算,最后得到一个结果。
reduce(function, iterable[, initializer])
exp:
reduce(lambda x,y:x+y,[1,2,3,4,5]
#output:15
dir函数:将模块内的所有模块变量和函数名字放入一个列表内
文件操作:
open(‘文件名+后缀’,‘打开方式’,‘编码方式’),打开文件或创建文件
.write(‘在文件中写入的内容’)
.close() 关闭文件
.read() 读取文件内容
.readline()以回车为分割符按行读取内容
,readlines() readine()后将字符串传入列表
fileinput() 直接打开文件
要知道,文件读取和写都是依靠指针的,当指针移动到文件结尾后,我们无法再读取前面的内容
这时候就需要让指针移动到我们需要的位置,seek()函数就是移动指针的函数
.seek(指针前往的文件位置,whence)
关于whence
• 默认值是 0,表示从文件开头开始计算指针偏移的量(简称偏移量)。这是 offset 必须是大于等于 0 的整数。
• 是 1 时,表示从当前位置开始计算偏移量。offset 如果是负数,表示从当前位置向前移动,整数表示向后移动。
• 是 2 时,表示相对文件末尾移动。
tell():显示文件当前指针所在位置
读取文件状态的操作:
需要模组 os,
os.state(‘文件名+后缀’) 查看文件状态