标签:记录 rgb model 薪资 ali init word 很多 visible
egon male 18 3000 wupeiqi female 28 20000 yuanhao female 28 10000
要求: 从文件中取出每一条记录放入列表中, 列表的每个元素都是{‘name‘:‘egon‘,‘sex‘:‘male‘,‘age‘:18,‘salary‘:3000}的形式
with open(‘score.txt‘,‘r‘,encoding=‘utf-8‘)as file:
info=[]
for line in file:
name,sex,age,salary = line.strip().split(‘ ‘)
dic={‘name‘:name,‘sex‘:sex,‘age‘:age,‘salary‘:int(salary)}
# print(dic)
info.append(dic)
print(info)
2 根据1得到的列表,取出所有人的薪资之和
salary_sum=sum(n.get(‘salary‘)for n in info)
print(salary_sum)
3 根据1得到的列表,取出所有的男人的名字
all_male=[n.get(‘name‘)for n in info if n.get(‘sex‘)==‘male‘]
print(all_male)
4 根据1得到的列表,将每个人的信息中的名字映射成首字母大写的形式
name=[n.get(‘name‘) for n in info]
name_title=[i.title() for i in name]
print(name_title)
5 根据1得到的列表,过滤掉名字以a开头的人的信息
new_info=[i for i in info if not i.get(‘name‘).startswith(‘a‘)]
print(new_info)
6 使用递归打印斐波那契数列(前两个数的和得到第三个数,如:0 1 1 2 3 5 8...)
def fun1(n, a=0, b=1):
if n > 0:
print(a, end=‘ ‘)
a, b = b, a + b
n -= 1
fun1(n, a, b)
else:
print(‘程序结束!‘)
?
?
fun1(8)
7 一个嵌套很多层的列表,如l=[1,2,[3,[4,5,6,[7,8,[9,10,[11,12,13,[14,15]]]]]]],用递归取出所有的值
l1=[1,2,[3,[4,5,6,[7,8,[9,10,[11,12,13,[14,15]]]]]]]
?
?
def func1(l):
for i in l:
if type(i) == list:
func1(i)
else:
print(i)
?
?
func1(l1)
标签:记录 rgb model 薪资 ali init word 很多 visible
原文地址:https://www.cnblogs.com/bailongcaptain/p/12568509.html