zoukankan      html  css  js  c++  java
  • 3-25作业

    1、文件内容如下,标题为:姓名,性别,年纪,薪资
    egon male 18 3000
    alex male 38 30000
    wupeiqi female 28 20000
    yuanhao female 28 10000

    要求:
    从文件中取出每一条记录放入列表中,
    列表的每个元素都是{'name':'egon','sex':'male','age':18,'salary':3000}的形式

    1 lt1 = ['name','sex','age','salary']
    2 dic2 = []
    3 with open('a.txt','r',encoding='utf-8')as fr:
    4     for lt2 in fr:
    5         lt2 = lt2.strip().split()
    6 
    7         dic = {k : v for k,v in zip(lt1,lt2)}
    8         dic2.append(dic)
    9 print(dic2)

    2 根据1得到的列表,取出所有人的薪资之和

    1 salary_list = [dic['salary'] for dic in dic_list]
    2 
    3 print(sum(salary_list))


    3 根据1得到的列表,取出所有的男人的名字

    1 for a in info 
    2 for b in a
    3 if a.get(b) == 'male'])
    4 print([a.get('name') 


    4 根据1得到的列表,将每个人的信息中的名字映射成首字母大写的形式

    1 new_l=map(lambda item:
    {'name':item['name'].capitalize(),'sex':item['sex'],'age':item['age'],'salary':item['salary']},l) 2 3 print(list(new_l))


    5 根据1得到的列表,过滤掉名字以a开头的人的信息

    1 new_info=[i for i in info if not i.get('name').startswith('a')]
    2 print(new_info)


    6 使用递归打印斐波那契数列(前两个数的和得到第三个数,如:0 1 1 2 3 4 7...)

    1 def fib(x,y):
    2        z=x+y
    3        print(x,end=" ")
    4        if y <= 100:
    5           fib(y,z)
    6 
    7 fib(0,1)


    7 一个嵌套很多层的列表,如l=[1,2,[3,[4,5,6,[7,8,[9,10,[11,12,13,[14,15]]]]]]],用递归取出所有的值

    1 def f1(f):
    2     for x in f:
    3         if type(x) is list:
    4          
    5             f1(x)
    6         else:
    7             print(x)
    8 
    9 f1(l)
  • 相关阅读:
    电脑开不开机 且开且珍惜
    IA32系统级架构总览(二)
    IA32系统级架构总览(一) 实模式和保护模式
    Django 步骤
    【Python】使用Supervisor来管理Python的进程
    python json操作
    term2 配置
    被执行人查询
    Linux下redis的安装
    FTP命令
  • 原文地址:https://www.cnblogs.com/2722127842qq-123/p/12568759.html
Copyright © 2011-2022 走看看