演習は_組み込み関数と再帰

  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}フォームを

2、表1に従って得られ、最高給抽出した人物の情報

3は、リストによると、若者の情報の大部分を除去することにより得られます

4、表1によれば、文字の大文字最初の手紙の中で全員の名前のマッピング情報を取得します

名前をフィルタリングすることで取得したリストによると5は、個人の情報で始まります

図6に示すように、プリント再帰フィボナッチ数(... 0112358番号と最初の二つのような、第3の数を与えます)

図7に示すように、そのようなL = [1,2、[3、[4,5,6、[7,8、[9,10、[11,12,13、[14,15]などの多くの層のネストされたリスト]]]]]]、再帰的にすべての値を削除

import copy

list1 = ['name','sex','age','salary']
list2 = []
with open('num_info.txt','r',encoding='utf8') as fr:
    list0 = fr.read().split('\n')
    # print(list0)
    for i in list0:
        u_info = i.split(' ')
        dic = {k:v for k,v in zip(list1,u_info)}
        list2.append(dic)
# 1、得到元素是字典的列表
print(list2)  
# 2、
print(max(list2,key=lambda dic:dic['salary']))
# 3、
print(min(list2,key=lambda dic:dic['age']))
# 4、
list3 = copy.deepcopy(list2)
for i in list3:
    i['name'] = i['name'].capitalize()
print(list3)

res = map(lambda item:item['name'].capitalize(),list3)
print(list(res))
5、
res2 = filter(lambda item:item['name'].startswith('a'), list2)
print(list(res2))
# 6、
def func(a,b,n):
    if b > n:
        return
    print(a,end=' ')
    func(b,a+b,n)
func(0,1,50)
# 7
l=[1,2,[3,[4,5,6,[7,8,[9,10,[11,12,13,[14,15]]]]]]]
def fun(lis):
    for i in lis:
        if type(i) is list:
            fun(i)
        else:
            print(i,end=' ')
get(l)

おすすめ

転載: www.cnblogs.com/allenchen168/p/11588285.html