zoukankan      html  css  js  c++  java
  • python练习题-day16

    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]
  • 相关阅读:
    Java Class/Method
    Data Types in Java
    Java overview && JVM
    Interface Vs. Abstract Class
    【javascript】Object三种定义方式
    【C#】导出Excel
    【javascript】简单原型链、借用构造函数
    Mysql表编码查看修改
    asp.net的mvc?
    连表
  • 原文地址:https://www.cnblogs.com/fumy/p/10452130.html
Copyright © 2011-2022 走看看