• pyth作业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}的形式

    with open("file.txt","r",encoding="utf-8") as f:
        l=[]
        for line in f:
            name,sex,age,salary=line.strip("
    ").split()
            l.append({"name":name,"sex":sex,"age":age,"salary":salary})
    print(l)

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

    with open("file.txt","r",encoding="utf-8") as f:
    
        l=[]
        for line in f:
            name,sex,age,salary=line.strip("
    ").split()
            l.append({"name":name,"sex":sex,"age":age,"salary":salary})
    
    sum_salary=sum(int(i["salary"]) for i in l)
    print(sum_salary)


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

    with open("file.txt","r",encoding="utf-8") as f:
    
        l=[]
        for line in f:
            name,sex,age,salary=line.strip("
    ").split()
            l.append({"name":name,"sex":sex,"age":age,"salary":salary})
    
    new_l=[i["name"] for i in l if i["sex"]=="male"]
    print(new_l)

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

    with open("file.txt","r",encoding="utf-8") as f:
    
        l=[]
        for line in f:
            name,sex,age,salary=line.strip("
    ").split()
            l.append({"name":name,"sex":sex,"age":age,"salary":salary})
    
    name_l=[i["name"].capitalize() for i in l]
    print(name_l)

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

    with open("file.txt","r",encoding="utf-8") as f:
    
        l=[]
        for line in f:
            name,sex,age,salary=line.strip("
    ").split()
            l.append({"name":name,"sex":sex,"age":age,"salary":salary})
    
    name_l=[i["name"] for i in l if not i["name"].startswith("a")]
    print(name_l)


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

    def p_fibonacci(n,a=0,b=1):
        while n > 0:
            print(a,end=" ")
            a,b=b,a+b
            n-=1
            return p_fibonacci(n,a,b)
    
    p_fibonacci(6)

    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 p(x):
        for i in x:
            if type(i) is list:
                p(i)
            else:
                print(i,end=" ")
    p(l)
  • 相关阅读:
    学习笔记4
    学习笔记2
    学习笔记1
    树莓派与Arduino串口通信
    团队大作业第三周周报
    团队大作业第二周周报
    团队大作业第一周周报
    RTCSD_第三次作业
    RTCSD_第二次作业
    RTCSD_第一次作业
  • 原文地址:https://www.cnblogs.com/baicai37/p/12566752.html
Copyright © 2020-2023  润新知