zoukankan      html  css  js  c++  java
  • Python学习————作业

    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}的形式

    list1 = []
    with open(r'user_list.txt', mode='rt', encoding='UTF-8') as f:
        for line in f:
            l = {}
            name, sex, age, salary = line.strip().split(' ')
            l['name'] = name
            l['sex'] = sex
            l['age'] = int(age)
            l['salary'] = int(salary)
            list1.append(l)
    print(list1)
    

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

    salary_sum = [dic['salary'] for dic in list1]
    print(sum(salary_sum))
    

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

    man_name = [line['name'] for line in list1 if line['sex'] == 'male']
    print(man_name)
    

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

    for line in list1:
        line['name'] = line.get('name').capitalize()
        print(line)
    

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

    print([line for line in list1 if not line.get('name').startswith('a')])

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

    
    

    7 一个嵌套很多层的列表,如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 func(list1):
        for x in list1:
            if type(x) is list:
                func(x)
            else:
                print(x)
    

    选做作业:同昨天

  • 相关阅读:
    Mvc+三层(批量添加、删除、修改)
    js中判断复选款是否选中
    EF的优缺点
    Git tricks: Unstaging files
    Using Git Submodules
    English Learning
    wix xslt for adding node
    The breakpoint will not currently be hit. No symbols have been loaded for this document."
    Use XSLT in wix
    mfc110ud.dll not found
  • 原文地址:https://www.cnblogs.com/x945669/p/12571729.html
Copyright © 2011-2022 走看看