day14作业

作业

res=[]
keys =['name','sex','age','salary']
with open('userinfo.txt','r',encoding='utf8') as fr:
    for i in fr:
     s=i.strip()
     d=s.split()
     print(d)
     dic = {k:v for k,v in zip(keys,d)}
     res.append((dic))

res1 = res
print(res1)
  1. 根据1得到的列表,取出薪资最高的人的信息

    price = max(res1,key=lambda salary:salary['salary'])
    
    print(price)
    
  2. 根据1得到的列表,取出最年轻的人的信息

    young = min(res1,key=lambda age:age['age'])
    
    print(young)
    
  3. 根据1得到的列表,将每个人的信息中的名字映射成首字母大写的形式

    big = map(lambda name:name['name'].title(),res1)
    
    print(list(big))
    
  4. 根据1得到的列表,过滤掉名字以a开头的人的信息

    down = filter(lambda name: not name['name'].startswith('a'),res1)
    
    print(list(down))
    
  5. 使用递归打印斐波那契数列(前两个数的和得到第三个数,如:0 1 1 2 3 4 7...)

    def fb(n, n1=-1, n2 =1):
        n3 = n1 + n2 
        print(n3)
    
        while n > 1:
    
            n-=1
            fb(n,n2,n3)
            return
    
posted @ 2019-09-25 22:39  鸿鸿1  阅读(86)  评论(0编辑  收藏  举报