zoukankan      html  css  js  c++  java
  • 练习题

    一、

    1、随意写一个20行以上的文件
    2、运行程序,现将内容读取到内存到内存中,用列表存储
    3、接受用户输入页码,每页5条,仅输出当页内容

    with open("file",encoding="utf-8") as f:  #打开一个文件
        w = f.readlines()   #按行读取文件
    page_num = int(input("请输入页码:"))
    pages,mod = divmod(len(w),5) #求有多少页,有没有多余的行数  pages 为页数,mod为剩余行数,余数就是剩余的行数
    if mod:                      #如果有剩余的行数,那么页数加一
        pages +=1               # 一共有多少页
    if page_num > pages or page_num <= 0:  # 用户输入的页数大于总数或者小于等于0
        print("输入有误")
    elif page_num == pages and mod != 0:  #用户输入的页码是最后一页,且之前有过剩余行数
        for i in range(mod):
            print(w[(page_num-1)*5 +i].strip()) #就只输出这一页上剩余的行数
    else:
        for i in range(5):
            print(w[(page_num -1)*5+i ].strip()) #否则输出5行

    二、

    如下,每个小字典的name对应股票名字,shares对应多少股,price对应股票的价格

    portfolio = [
        {'name':'IBM','shares':100,'price':91.1},
        {'name':'AAPL','shares':50,'price':534.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}
    ]

    计算购买每支股票的价格

    print(list(map(lambda dic:{dic['name']:round(dic['shares']*dic['price'],2)},portfolio)))  #round:保留几位小数

    用filter过滤出单价大于100的股票有哪些

    print(list(filter(lambda dic: True if dic['price'] > 100 else False,portfolio)))
    或 print(list(filter(lambda dic:dic[
    "price"]>100,portfolio)))
  • 相关阅读:
    【设计模式】责任链模式
    python 获取cookie,发送请求
    python requests报错:Exception: ('Connection broken: IncompleteRead(3794 bytes read, 4398 more expect ed)', IncompleteRea
    获取二维数组 所有的组合排列
    tp3.0 验证码生成和使用
    MySQL: mysql is not running but lock exists 的解决方法
    [RxSwift]4.2.0、Observer
    [RxSwift]4.1.6、ControlEvent
    [RxSwift]4.1.5、Signal
    [RxSwift]4.1.4、Driver
  • 原文地址:https://www.cnblogs.com/wanglan/p/9555238.html
Copyright © 2011-2022 走看看