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}的形式
    l=[]

    with open('db.txt','rt',encoding='utf-8')as f:
    for line in f:
    dic = {}
    name,sex,age,salary=line.strip().split()
    dic['name']=name
    dic['sex']=sex
    dic['age']=int(age)
    dic['salary']=int(salary)
    l.append(dic)
    print(l)
    # 2 根据1得到的列表,取出所有人的薪资之和
    # s=0
    # for i in l:
    # s+=i['salary']
    # print(s)


    # salary_list=[dic['salary'] for dic in l ]
    # print(sum(salary_list))



    # 3 根据1得到的列表,取出所有的男人的名字
    # for dic in l:
    # if dic['sex'] =='male':
    # print(dic['name'])


    name_list=[dic['name'] for dic in l if dic['sex']=='male']
    print(name_list)






    # 4 根据1得到的列表,将每个人的信息中的名字映射成首字母大写的形式
    # for dic in l:
    # dic['name']=dic['name'].title()
    # print(l)




    # 5 根据1得到的列表,过滤掉名字以a开头的人的信息
    # new_l=[ dic for dic in l if not dic['name'].startswith('a')]
    # print(new_l)



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

    func(0,1)

    # 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 f1(list1):
    # for x in list1:
    # if type(x) is list:
    # f1(x)
    # else:
    # print(x)
    #
    #
    # f1(l)
  • 相关阅读:
    oracle比较常用的函数
    生成GUID
    字符串操作
    Visual Studio常用快捷键
    c#保存异常日志
    c#的Trim方法
    c#之文件操作
    Python可视化库matplotlib.pyplot里contour与contourf的区别
    python linspace
    神经网络实现连续型变量的回归预测(python)
  • 原文地址:https://www.cnblogs.com/haliluyafeng/p/12570818.html
Copyright © 2011-2022 走看看