zoukankan      html  css  js  c++  java
  • 匿名函数与内置函数连用

    '''
    要求:
    从文件中取出每一条记录放入列表中,列表的每个元素都是`
    {'name':'egon','sex':'male','age':18,'salary':3000}`的形式
    '''
    
    all_user_list=[]
    with open('user_info.txt','r',encoding='utf-8') as f:
        for per_info in f:
            per_user_dic = {}
            name,sex,age,salary=per_info.strip().split()
            per_user_dic['name']=name
            per_user_dic['sex']=sex
            per_user_dic['age']=int(age)
            per_user_dic['salary']=int(salary)
            all_user_list.append(per_user_dic)
        print(all_user_list)
        # 1. 根据1得到的列表,取出薪资最高的人的信息
        print(max(all_user_list,key=lambda per_user_dic:per_user_dic['salary']))
        # 2.根据1得到的列表,取出最年轻的人的信息
        print(min(all_user_list,key=lambda per_user_dic:per_user_dic['age']))
        # 3.根据1得到的列表,将每个人的信息中的名字映射成首字母大写的形式
        print(list(map(lambda per_user_dic:{per_user_dic['name'].capitalize():name,per_user_dic['sex']:sex,
                            per_user_dic['age']:int(age),per_user_dic['salary']:int(salary)},all_user_list)))
        # 4. 根据1得到的列表,过滤掉名字以a开头的人的信息
        print(list(filter(lambda per_user_dic:per_user_dic['name'].startswith('a'),all_user_list)))
    View Code
    #2. 使用递归打印斐波那契数列(前两个数的和得到第三个数,如:0 1 1 2 3 4 7...)
    
    item = int(input('输入项数>>>:'))
    start1=int(input('起始第一个数>>>:'))
    start2=int(input('起始第二个数>>>:'))
    
    def fib(n, x, y):
        if n==0:
            return
        else:
            x, y = y, x + y
            print(y)
        fib(n-1, x,y)
    fib(item, start1, start2)
    # 3. 一个嵌套很多层的列表,如l=[1,2,[3,[4,5,6,[7,8,[9,10,[11,12,13,[14,15]]]]]]],用递归取出所有的值
    l=[1,2,[3,[4,5,6,[7,8,[9,10,[11,12,13,[14,15]]]]]]]
    
    def get_element(x):
       for i in x:
           if type(i)==list:
               get_element(i)
           else:
                print(i)
    get_element(l)
  • 相关阅读:
    c3p0整合mysql报错问题
    MySQL错误问题
    导入项目@Override报错原因及解决办法
    AtomicInteger线程安全的计数器
    jq实现鼠标经过出现上拉菜单
    css实现文字裁切效果
    echarts地图
    css3实现 鼠标经过li时动态画边框(jq库导航)
    仿妙味课堂导航(转)
    jq仿 妙味课堂导航01
  • 原文地址:https://www.cnblogs.com/zhangchaocoming/p/11587285.html
Copyright © 2011-2022 走看看