• 8.2每日作业系列之函数的递归调用


    # 1 使用递归打印斐波那契数列(前两个数的和得到第三个数,如:0 1 1 2 3 4 7...)
    # def func(x,y):
    # res=x+y
    # print(x)
    # if res<100:
    # return func(y,res)
    # else:
    # return y
    # print(func(0,1))

    # 2 一个嵌套很多层的列表,如l=[1,2,[3,[4,5,6,[7,8,[9,10,[11,12,13,[14,15]]]]]]],用递归取出所有的值
    # l=[1,2,[3,[4,5,6,[7,8,[9,10,[11,12,13,[14,15]]]]]]]
    # def func(l):
    # for i in l:
    # if type(i) is not list:
    # print(i)
    # else:
    # func(i)
    # func(l)

    # 3 编写用户登录装饰器,在登录成功后无需重新登录,同一账号重复输错三次密码则锁定5分钟
    # import time
    # def outter(func):
    # def wrapper(*args,**kwargs):
    # count = 0
    # while True:
    # if count == 3:
    # time.sleep(10)
    # wrapper()
    # name = input('用户名:').strip()
    # pwd = input('密码:').strip()
    # with open('db.txt',mode='r',encoding='utf-8') as f:
    # for line in f:
    # if line.startswith(name):
    # line = line.strip(' ').split(',')
    # if line[1]==pwd:
    # if line[3]:
    # print('已登陆')
    # return
    # print('登陆成功')
    # res=func(*args,**kwargs)
    # return res
    # else:
    # print('密码错误')
    # count+=1
    # return wrapper
    #
    # @outter
    # def index():
    # print('.......')
    # time.sleep(4)
    # index()

    # 4、求文件a.txt中总共包含的字符个数?思考为何在第一次之后的n次sum求和得到的结果为0?(需要使用sum函数)
    # with open('db.txt',mode='r',encoding='utf-8') as f:
    # print(sum(len(line) for line in f))

    # 5、文件shopping.txt内容如下
    # mac,20000,3
    # lenovo,3000,10
    # tesla,1000000,10
    # chicken,200,1
    # 求总共花了多少钱?
    with open('info.txt',mode='r',encoding='utf-8') as f:
    # # info=[line.strip(' ').split(',') for line in f]
    # # cost=sum(float(price)*int(count) for _,price,count in info)
    # # print(cost)
    #
    l=[]
    for line in f:
    info=line.strip(' ').split(',')
    name,price,count=info
    res=float(price)*int(count)
    l.append(res)
    cost=sum(l)
    print(cost)
    # for line in f:
    # info=line.strip(' ').split(',')
    # for _, price, count in info:
    # print(_, price, count)
    # for i in info:
    # print(i)


    # 打印出所有商品的信息,格式为[{'name':'xxx','price':333,'count':3},...]

    # with open('info.txt',mode='r',encoding='utf-8') as f:
    # info=[{
    # 'name': line.strip(' ').split(',')[0],
    # 'price': float(line.strip(' ').split(',')[1]),
    # 'count': int(line.strip(' ').split(',')[2]),
    # } for line in f]
    # print(info)


    # 求单价大于10000的商品信息,格式同上
    # with open('info.txt',mode='r',encoding='utf-8') as f:
    # info=[{
    # 'name': line.strip(' ').split(',')[0],
    # 'price': float(line.strip(' ').split(',')[1]),
    # 'count': int(line.strip(' ').split(',')[2]),
    # } for line in f if float(line.strip(' ').split(',')[1]) > 10000]
    # print(info)


    # 明日默写:
    # 二分查找
    # l=[1,2,10,30,33,99,101,200,301,311,402,403,500,900,1000] #从小到大排列的数字列表
    # def search(n,l):
    # print(l)
    # if len(l) == 0:
    # print('not exists')
    # return
    # mid_index=len(l) // 2
    # if n > l[mid_index]:
    # #in the right
    # l=l[mid_index+1:]
    # search(n,l)
    # elif n < l[mid_index]:
    # #in the left
    # l=l[:mid_index]
    # search(n,l)
    # else:
    # print('find it')
    # search(3,l)



  • 相关阅读:
    2019 ICPC Asia Nanchang Regional E Eating Plan 离散化+前缀和
    2018icpc南京/gym101981 G Pyramid 找规律
    2018icpc沈阳/gym101955 J How Much Memory Your Code Is Using? 签到
    2018icpc南京/gym101981 K Kangaroo Puzzle 随机化
    series_02
    series_01
    locust_参数化关联
    locust_关联
    locust_单接口
    截图处理
  • 原文地址:https://www.cnblogs.com/Maikes/p/9458874.html
Copyright © 2020-2023  润新知