1 文件 a.txt 内容如下,标题为:姓名,性别,年纪,薪资
egon male 18 3000
alex male 38 30000
wupeiqi female 28 20000
yuanhao female 28 10000
要求:
1、 从文件中取出每一条记录放入列表中,列表的每个元素都是{'name':'egon','sex':'male','age':18,'salary':3000}的形式
2、 根据1得到的列表,取出薪资最高的人的信息
3、 根据1到的列表,取出最年轻的人的信息
4、 根据1得到的列表,将每个人的信息中的名字映射成首字母大写的形式
5、 根据1得到的列表,过滤掉名字以a开头的人的信息
6、 使用递归打印斐波那契数列 0 1 1 2 3 5 8... (前两个数的和得到第三个数)
goods = []
with open('a.txt',encoding = 'utf-8') as f:
for line in f:
l = line.split()
goods.append({'name':l[0], 'sex':l[1], 'age':int(l[2]), 'salary':float(l[3])})
print(goods)
print('薪资最高'.center(50,'='))
print(max(goods,key=lambda x:x['salary']))
print('最年轻的人'.center(50,'='))
print(min(goods,key=lambda x:x['age']))
print('名字首字母大写'.center(50,'='))
print(list(map(lambda x:x['name'].capitalize(),goods)))
print('名字以a开头'.center(50,'='))
print(list(filter(lambda x:x['name'].startswith('a'),goods)))
# Fibonacci numbers module
# def fib(n): # write Fibonacci series up to n
# a, b = 1, 0
# while b < n:
# print(b, end=' ')
# a, b = b, a + b
# print()
#
# fib(100)
# def fib2(n): # return Fibonacci series up to n
# result = []
# a, b = 1, 0
# while b < n:
# result.append(b)
# a, b = b, a + b
# return result
#
# print(fib2(100))
# fibs = [0, 1]
# numZS = input('How many Fibonacci numbers do you want? ')
# for i in range(int(numZS)-2):
# fibs.append(fibs[-2] + fibs[-1])
# print(fibs)