day03 数据基础
1.列举字符串,列表,元组,字典每个常用的五个方法
字符串: strip() , lstrip(),restrip()
count(),index(),find()
startswith,endswith
split, resplit,join().切片
列表:
append(), insert(),extend(),for 循环,
enumerate(),remove(),pop(),
del reverse(), len(),max(),min(),sort()
字典:
update(),pop(),len(),keys(),values(),
python的数据类型总结: --》 功能
https://www.jianshu.com/p/2af847d4a533
.描述下列常见内置函数的作用可用代码说明map,zip,filter,sorted,reduce
函数式编程: 函数式=编程语言定义的函数+数学意义的函数
map()函数:
map()函数用于指定序列中的所有元素作为参数调用指定函数,并将结果构成一个新的序列返回
map()函数接收两个参数,一个是函数,一个是Iterable(可迭代对象),map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回
map()作为高阶函数,事实上它把运算规则抽象了
arr=map(lambda x:x**2,[2,4,6,8,10])
for n in arr:
print(n)
reduce()函数:
reduce把一个函数作用在一个序列上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算
from functools import reduce
def func(x,y):
return x+y
sum=reduce(func,(2,4,6,8,10))
print(sum)
filter()函数:
和map()类似,filter()也接收一个函数和一个序列。和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素
删掉偶数
def is_odd(n):
return n%2==1
print(list(filter(is_odd,[1,2,3,4,5,6,9,10,15])))
map() filter() reduce() 区别
map() 处理序列中的每个元素,得到的结果是一个'列表',该'列表'元素个数及位置与原来一样
filter()遍历序列中的每一个元素,判断每个元素得到的布尔值,如果是True则留下来
reduce() 处理一个序列,把序列进行合并操作
sorted()函数:
排序函数,排序的核心是比较两个元素的大小,如果是数字我们可以直接比较,但如果是字符串或者是字典,直接比较数学上的大小是没有意义的,因此,比较过程必须通过函数抽象出来
L=[('Bob',75),('Adam',92),('Bart',66),('Lisa',88)]
def by_name(t):
return t[0]
def by_score(t):
return t[1]
L2=sorted(L,key=by_name)
print('根据名字排序:',L2)
L2=sorted(L,key=by_score,reverse=True)
print('根据成绩排序:',L2)
zip()函数:
zip()函数以一系列列表作为参数,将列表中对应的元素打包成一个个元组,然后返回由这些元组组成的列表
a=[1,2,3]
b=[4,5,6]
zipped=zip(a,b)
for i in zipped:
print(i)
https://www.jianshu.com/p/d83b2f779632