python练习题-day16

it2022-05-09  36

1.用map来处理字符串列表,把列表中所有人都变成sb,比方alex_sb

name=["alex","wupeiqi","yuanhao","nezha"]

2.用map来处理下述l,然后用list得到一个新的列表,列表中每个人的名字都是sb结尾

       l=[{'name':'alex'},{'name':'y'}]

3.用filter来处理,得到股票价格大于20的股票名字

shares={   'IBM':36.6,   'Lenovo':23.2,     'oldboy':21.2,    'ocean':10.2,       }

4.有下面字典,得到购买每只股票的总价格,并放在一个迭代器中。

结果:list一下[9110.0, 27161.0,......]

portfolio = [

  {'name': 'IBM', 'shares': 100, 'price': 91.1},

    {'name': 'AAPL', 'shares': 50, 'price': 543.22},

    {'name': 'FB', 'shares': 200, 'price': 21.09},

    {'name': 'HPQ', 'shares': 35, 'price': 31.75},

    {'name': 'YHOO', 'shares': 45, 'price': 16.35},

{'name': 'ACME', 'shares': 75, 'price': 115.65}]

 

5.还是上面的字典,用filter过滤出单价大于100的股票。

portfolio = [

{'name': 'IBM', 'shares': 100, 'price': 91.1},

{'name': 'AAPL', 'shares': 50, 'price': 543.22},

{'name': 'FB', 'shares': 200, 'price': 21.09},

{'name': 'HPQ', 'shares': 35, 'price': 31.75},

{'name': 'YHOO', 'shares': 45, 'price': 16.35},

{'name': 'ACME', 'shares': 75, 'price': 115.65}]

6.有下列三种数据类型,

               l1 = [1,2,3,4,5,6]

               l2 = ['oldboy','alex','wusir','太白','日天']

               tu = ('**','***','****','*******')写代码,最终得到的是(每个元祖第一个元素>2,第三个*至少是4个)               [(3, 'wusir', '****'), (4, '太白', '*******')]这样的数据。 7.有如下数据类型:

               l1 = [ {'sales_volumn': 0},

                         {'sales_volumn': 108},

                         {'sales_volumn': 337},

                         {'sales_volumn': 475},

                         {'sales_volumn': 396},

                         {'sales_volumn': 172},

                         {'sales_volumn': 9},

                         {'sales_volumn': 58},

                         {'sales_volumn': 272},

                         {'sales_volumn': 456},

                         {'sales_volumn': 440},

                         {'sales_volumn': 239}]将l1按照列表中的每个字典的values大小进行排序,形成一个新的列表。

8.随意写一个20行以上的文件,运行程序,先将内容读到内存中,用列表存储,接收用户输入页码,每页5条,仅输出当页的内容

#1 li=map(lambda x:x+"_sb",name) print(list(li)) #2 li=map(lambda x:{"name":x.get("name")+"_sb"},l) print(list(li))#2_方法二 li=map(lambda x:{"".join(list(x.keys())):x.get("".join(list(x.keys())))+"_sb"},l)print(list(li))

 

#3 s=filter(lambda i:shares.get(i)>20,shares) print(list(s))

 

#4 g=map(lambda x:x.get("shares")*x.get("price"),portfolio) print(list(g)) #5 g=filter(lambda x:x.get("price")>100,portfolio) print(list(g)) #6 g=zip(l1[2:],l2[2:],tu[2:]) print(list(g)) #7 g=sorted(l1,key=lambda x:x.get('sales_volumn')) print(g) #8 def user_read(file): li=[] with open(file,encoding="utf-8") as f1: for i in f1: li.append(i.strip()) while True: paper=input("请输入页码:") if paper.isalpha(): print("输入有误,请重新输入:") continue elif paper.isdigit(): if int(paper)>(len(li)//5)+1: print("输入有误,请重新输入:") continue if int(paper)<=0: print("输入有误,请重新输入:") continue else: break return li[(int(paper)-1)*5:(int(paper))*5]

 

转载于:https://www.cnblogs.com/fumy/p/10452130.html

相关资源:数据结构—成绩单生成器

最新回复(0)