zoukankan      html  css  js  c++  java
  • python 基础应用5-简单购物车

    1、列表去重

    #列表去重
    li = [1,2,33,33,2,1,4,5,6,6]
    set1 = set(li)# 转为集合
    li = list(set1)# 转为列表
    print(li)#[1, 2, 33, 4, 5, 6]

    2、删除所含输入字母或数字的键值对

    #删除所含输入字母或数字的键值对
    dic = {'k1':1,'k2':2,'j1':3,'j2':4}
    l = []
    print(dic)
    s = input('输入所需删键值对中所含字母或数字:')
    for i in dic:
        if s in i:
            l.append(i)
    for i in l:
        dic.pop(i) #  或 del dic[i]
    print(dic)
    #输入所需删键值对中所含字母或数字:1
    #{'k2': 2, 'j2': 4}

     3、修改文件

    with open ('雪花','r',encoding = 'utf-8') as f,open ('雪花.bak','w',encoding = 'utf-8') as f1:
        for line in f:
            if '大白' in line:
                line = line.replace('大白','dabai')
            f1.write(line)
    import os
    os.remove('雪花')
    os.replace('雪花.bak','雪花')

    4、完整购物车

    username = input('请输入注册账号:')
    password = input('请输入注册密码:')
    with open('C:\Users\Administrator\Desktop\Python\t.txt', mode='w+', encoding='utf-8') as f:
        f.write("{}
    {}".format(username,password))
    print('恭喜你注册成功!')
    list = []
    i = 0
    while i <3:
        u_of_you = input("请输入您的账号:")
        p_of_you = input('请输入您的密码:')
        with open('C:\Users\Administrator\Desktop\Python\t.txt', mode='r+', encoding='utf-8') as f:
            for line in f:
                list.append(line)
        if u_of_you ==list[0].strip()  and  p_of_you==list[1].strip():
            print('登录成功!')
            # 购物车
            li = [{'name': '手机', 'price': '1500'},
                  {'name': '平板', 'price': '2000'},
                  {'name': '电视', 'price': '3000'},
                  {'name': '电脑', 'price': '4000'},
                  ]
            money_of_you = input('请输入您拥有的金额:')
            surplus = money_of_you
            shopping_car = {}
            while 1:
                if money_of_you.isdigit() and int(money_of_you) > 0:
                    for i, j in enumerate(li):
                        print('序号{},名称{},价格{}'.format(i, li[i]['name'], li[i]['price']))
                    choose = input('请输入想购买的序号(若退出直接回车):')
                    if choose.isdigit() and int(choose) < len(li) and int(choose) >= 0:
                        num = input('需要购买的数量:')
                        if num.isdigit() and int(num) > 0:
                            if int(surplus) > int(li[int(choose)]['price']) * int(num):
                                surplus = int(surplus) - int(li[int(choose)]['price']) * int(num)  # 剩余金额
                                if li[int(choose)]['name'] in shopping_car:  # 将相同的放一起
                                    shopping_car[li[int(choose)]['name']] = shopping_car[li[int(choose)]['name']] + int(num)
                                else:
                                    shopping_car[li[int(choose)]['name']] = int(num)
                                print('亲爱的{}用户,您购物车商品有{},剩余金额为{}'.format(u_of_you,shopping_car, surplus))
                            else:
                                print('余额不足!')
                                print('亲爱的{}用户,您购物车商品有{},剩余金额为{}'.format(u_of_you,shopping_car, surplus))
                                break
                        else:
                            print('输入数量有误,请重新输入。')
                            continue
                    elif choose == '':
                        print('亲爱的{}用户,您购物车商品有{},剩余金额为{}'.format(u_of_you,shopping_car, surplus))
                        break
                    else:
                        print('购物车中未有您输入的序号,请重新输入:')
                        continue
                else:
                    print('您输入不是金额,请重新输入:')
                    continue
        else:
            print('输入错误')
        i += 1
  • 相关阅读:
    js技巧大全
    DOM
    网页页面跳转几种方法
    JavaScript中创建对象的几种方式
    web本地存储-UserData
    图片预加载
    闭包
    JavaScript高级编程学习笔记(第三章之一)
    .net core 部署到ubuntu
    fiddler autoresponder 动态修改响应内容
  • 原文地址:https://www.cnblogs.com/2584808136-qq-com/p/12845095.html
Copyright © 2011-2022 走看看