python实现网上购物系统

1.购物商城的需求分析:

1、输出欢迎界面还有登录注册菜单:

1).登陆

2).注册  :保留用户信息,目前做不到固话,先注册,注册成功之后再选择登录进去

用户信息包括:用户名-密码-初始金额

2.购物菜单:

1).查看商品信息

2).充值金额

3).购买商品

4.查看购物清单

5.退出

2.代码示例:

简单实现购物功能,代码不是非常完善。

不建议将大部分的代码都写在函数体内,函数只是用来实现某一个小的功能,能够进行多次调用。接受用户输入等语句,尽量写在主菜单里面,而不是函数体内。

"""
@name : shopping.py
@author : xieshan
@projectname: 火影忍者
@time : 2022/3/24
"""
 
#存放已有的原始用户
user = {'root': {'passwd': '123456', '余额': 300},
        'admin': {'passwd': '123123', '余额': 400}}
#存放商品信息
dict = {'F001': {'name': '苹果', 'price': 4.2, 'count': 100}, 'F002': {'name': '香蕉', 'price': 3.2, 'count': 100},
        'F003': {'name': '棉花糖', 'price': 10, 'count': 100},
        'F004': {'name': '饼干', 'price': 5.2, 'count': 100}, 'F005': {'name': '芒果', 'price': 9.0, 'count': 100},
        'F006': {'name': '鸡蛋', 'price': 3.0, 'count': 100},
        'F007': {'name': '果冻', 'price': 3.2, 'count': 100}, 'F008': {'name': '辣条', 'price': 3.5, 'count': 100},
        'F009': {'name': '牛奶', 'price': 5.0, 'count': 100}}
 
#注册函数
def register(uname1, upasswd1, umoney):
    if umoney >= 100:
        user.update({uname1: {'passwd': upasswd1, '余额': umoney}})
        print(f"亲爱的{uname1},恭喜您注册成功!您的账户余额为{umoney},赶紧去登陆吧!")
    elif umoney < 100:
        print(f"您充值的金额低于100,注册失败,请重新注册")
 
#登陆函数
def login(uname2,upasswd2):
    global c
    if upasswd2 == user[uname2]['passwd']:
        print(f"欢迎{uname2}用户登陆成功!您的账户余额为{user[uname2]['余额']}")
        c = 1
    elif uname2 in user and upasswd2 != user[uname2]['passwd']:
        print(f"抱歉!亲爱的{uname2},您的密码输入错误!请重新输入!您还有{3 - i}次机会")
        c = 0
 
#购买商品函数
def shop():
    print("购买界面".center(100, '*'))
    sig2 = input("请将您选中的商品编号输入在此(退出请按'q'):")
    if sig2 in dict:
        sig3 = input(f"请将{dict[sig2]['name']}的购买数量输入在此:")
        if sig3.isdigit():
            sig3 = int(sig3)
            if sig3 <= dict[sig2]['count']:
                total = sig3 * dict[sig2]['price']
                if total <= user[uname2]['余额']:
                    umoney = user[uname2]['余额'] - total
                    user.update({uname2: {'passwd': upasswd2, '余额': umoney}})
                    dict.update({sig2:{'name':dict[sig2]['name'],'price':dict[sig2]['price'],'count':dict[sig2]['count']-sig3}})
                    shopcar.append({'商品名称': dict[sig2]['name'], '购买数量': sig3})
                    print(f"已购买{sig3}个{dict[sig2]['name']},花费{total}元,您的余额为{umoney} ")
                else:
                    print("抱歉!您的余额不足,不能进行购买!请充值")
                    return recharge()
            else:
                print("抱歉,本商品仓库数量不足")
        else:
            print("您输入的购买数量有误!请重新输入")
            return shop()
    elif sig2 == 'q':
        pass
    else:
        print("您输入的编号有误!请重新输入!")
        return shop()
 
#充值函数
def recharge():
    print("充值界面".center(100, '*'))
    print(f"亲爱的{uname2}用户,目前您的账户余额为 :{user[uname2]['余额']}元")
    r_moeny = input("请输入您要充值的金额(退出请按q):")
    if int(r_moeny) < 50:
        print("充值金额不得低于50哦!")
        return recharge()
    if r_moeny == 'q':
        pass
    else:
        r_moeny = float(r_moeny)
        umoney = r_moeny + user[uname2]['余额']
        for k in range(1,4):
            upasswd3 = input("请输入您的登陆密码进行验证: ")
            if upasswd3 == user[uname2]['passwd']:
                user.update({uname2: {'passwd': upasswd2, '余额': umoney}})
                print(f"恭喜您,充值成功,目前您的账户余额为:{user[uname2]['余额']}元")
                break
            else:
                print(f"抱歉!亲爱的{uname2},您的密码输入错误!充值失败!请重新输入!您还有{3 - k}次机会")
 
#购物清单函数
def shop_car():
    print("购物清单界面".center(100, '*'))
    if shopcar == [] :
        print("小主,这里空空如也,赶紧到三乐购物商城去选购商品吧!")
    else:
        print("您的购物清单如下:")
        for j in shopcar:
            print(j)
 
#主菜单
count = 0
while count == 0:
    print("欢迎来到三乐购物系统!".center(100, '-'))
    print("1.注册".center(80))
    print("2.登陆".center(80))
    print("3.退出".center(80))
    option = input("请输入您的选择: ")
    if option == '1':
        print("登陆界面".center(100, '-'))
        uname1 = input("请设置您的用户名(请将用户名设置为3-10个字符串的小写字母): ")
        if uname1 in user.keys():
            print("用户名已经存在,请重新注册!")
        elif uname1.islower() and 2 < len(uname1) < 11:
            upasswd1 = input("请设置您的密码:(请将密码设置为6位数字) ")
            if upasswd1.isdigit() and len(upasswd1) == 6:
                umoney = input("请输入您要充值的金额(初次充值不得低于100):")
                umoney = float(umoney)
                register(uname1, upasswd1, umoney)
            else:
                print("您设置的密码不符合规范!注册失败,请重新注册")
        else:
            print("您设置的用户名不符合规范,请重新设置!")
    elif option == '2':
        print("注册界面".center(100, '-'))
        flag = 0
        while flag == 0:
            uname2 = input("请输入您注册的用户名: ")
            if uname2 not in user and uname2 == 'new come':
                flag = 1
            elif uname2 not in user:
                print(f"抱歉!{uname2} 此用户名不存在!请重新输入或者注册!输入'new come'进入菜单页面")
                flag = 0
                continue
            elif uname2 in user:
                for i in range(1, 4):
                    upasswd2 = input("请输入您的密码: ")
                    login(uname2,upasswd2)
                    if c == 1:
                        flag = 1
                        count = 1
                        shopcar = []       #用列表存放用户已购买的商品
                        while 1:
                            print("三乐购物系统".center(100, '#'))
                            print("1、查看商品".center(80))
                            print("2、账户充值".center(80))
                            print("3、购买商品".center(80))
                            print("4、查看购物清单".center(80))
                            print("5、退出系统".center(80))
                            option2 = input("请输入您的选择:")
                            if option2 == '1':
                                print("目前三乐购物系统中有的商品信息如下".center(100, "#"))
                                for i in dict:
                                    print(i, end=': ')
                                    print(dict[i])
                            elif option2 == '2':
                                recharge()
                            elif option2 == '3':
                                shop()
                            elif option2 == '4':
                                shop_car()
                            elif option2 == '5':
                                print("\033[1;36m三乐购物系统欢迎您的下次光临!\033[0m")
                                exit()
                            else:
                                print("您的输入有误!请重新输入!")
                print("请重新登陆!或者输入'new come'进入菜单页面".center(100, '-'))
    elif option == '3':
        print("\033[1;36m三乐购物系统欢迎您的下次光临!\033[0m")
        exit()
    else:
        print("您的输入有误,请重新输入!")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 基于Python实现的购物商城管理系统

    完整项目地址: https://github.com/kongxiangchx/Shopping-mall-management-system 简介 本项目使用Python语言编写,实现了顾客端和商家端. 功能 店主功能:注册.登录.修改店铺信息.添加商品.删除商品.修改商品.查找商品.查看交易记录. 顾客功能:注册.登录.修改收货信息.查找商品.购买商品.查看交易记录.取消订单. 商家端 shopMain.py:编写界面上组件的功能,并通过调用send_data.py向服务器发送相应的请求.

  • python实现淘宝购物系统

    本文实例为大家分享了python淘宝购物系统的具体代码,供大家参考,具体内容如下 代码如下: #刚创建账户所拥有的钱 money = 0 #定义商品列表 goods_list = [ {'name':'iphone','price':4500,'count':40}, {'name':'电脑','price':7000,'count':100}, {'name':'平板','price':5000,'count':60}, {'name':'羽绒服','price':500,'count':80

  • Python实现信用卡系统(支持购物、转账、存取钱)

    最近一直在做一个有关信用卡系统的项目,所有很少出来给大家打招呼了,今天也该告一段了,本项目是基于python编程语言做的,此信用卡支持购物,转账和存取钱,下面小编把需求及实现思路大概分享一下,仅供参考,如有bug欢迎各位大侠提出,共同学习进步,谢谢! 一.要求 二.思路 1.购物类buy 接收 信用卡类 的信用卡可用可用余额, 返回消费金额 2.信用卡(ATM)类 接收上次操作后,信用卡可用余额,总欠款,剩余欠款,存款 其中: 1.每种交易类型不单独处理金钱,也不单独记录流水账,每种交易类型调用

  • Python实现购物系统(示例讲解)

    要求: 用户入口 1.商品信息存在文件里 2.已购商品,余额记录. 商家入口 可以添加商品,修改商品价格 Code: 商家入口: # Author:P J J import os ps = ''' 1 >>>>>> 修改商品 2 >>>>>> 添加商品 按q为退出程序 ''' # 打开两个文件,f文件为原来存取商品文件,f_new文件为修改后的商品文件 f = open('commodit', 'r', encoding='utf-8

  • python实现网上购物系统

    1.购物商城的需求分析: 1.输出欢迎界面还有登录注册菜单: 1).登陆 2).注册  :保留用户信息,目前做不到固话,先注册,注册成功之后再选择登录进去 用户信息包括:用户名-密码-初始金额 2.购物菜单: 1).查看商品信息 2).充值金额 3).购买商品 4.查看购物清单 5.退出 2.代码示例: 简单实现购物功能,代码不是非常完善. 不建议将大部分的代码都写在函数体内,函数只是用来实现某一个小的功能,能够进行多次调用.接受用户输入等语句,尽量写在主菜单里面,而不是函数体内. ""

  • JavaWeb实战之开发网上购物系统(超详细)

    一.项目描述 基于B/S三层架构设计的购物系统,可以更好地符合"高内聚,低耦合"的设计思想.表现层(UI)通过JSP在浏览器上实现界面展示,通过Servlet接受用户请求并生成验证码等实时信息:数据访问层(DAL)通过JDBC对DBMS进行访问:二者之间的业务逻辑层(BLL)通过Service进行连接.同时面向接口编程提高规范化.这只是我自己用两三天的时间做的小项目,距离真正的购物系统差距还是很大的,仅供初学者参考,很多逻辑缺陷不必太纠结,以后有时间会再写一篇博客对这个项目进行相关测试

  • python 实现网上商城,转账,存取款等功能的信用卡系统

    一.要求 二.思路 1.购物类buy 接收 信用卡类 的信用卡可用可用余额, 返回消费金额 2.信用卡(ATM)类 接收上次操作后,信用卡可用余额,总欠款,剩余欠款,存款 其中: 1.每种交易类型不单独处理金钱,也不单独记录流水账,每种交易类型调用处理金钱的函数(传入交易类型,交易金额) 2.处理金钱的函数,调用配置文件中关于每种交易类型的加减钱和利率 返回本次操作后信用卡可用余额,总欠款,剩余欠款,存款 3.客户端 银行管理员注册登陆 普通用户注册登陆 发送需求:注册.登陆.交易类型.交易金额

  • PHP网上调查系统

    PHP网上调查系统    这是一个简单的投票程序,对于刚学PHP和朋友来说是一个很不错的入门程序.在这里给大家介绍一下,希望能对朋友们有所帮助. 该系统是由以下四个文件组成的:有HTML调查表单的survey.htm,实现调查功能的survey.php,记录调查项目的data.txt和记录调查结果的survey.txt.其中data.txt和survey.txt我们可以用NOTEPAD分别创建之,并传到程序目录下.文件data.txt中存的是要进行调查的项目,注意每个项目应占一行:而survey

  • python实现内存监控系统

    本文实例为大家分享了python实现内存监控系统的具体代码,供大家参考,具体内容如下 思路:通过系统命令或操作系统文件获取到内存信息(linux 内存信息存在/proc/meminfo文件中,mac os 通过命令vm_stat命令可以查看) 并将获取到信息保存到数据库中,通过web将数据实时的展示出来.(获取数据-展示数据) 1.后台数据采集(获取数据) import subprocess import re import MySQLdb as mysql import time import

  • python 简单照相机调用系统摄像头实现方法 pygame

    如下所示: # -*- coding: utf-8 -*- from VideoCapture import Device import time import pygame from pygame.locals import * import sys pygame.init() size = width, height = 620, 485 print size speed = [2, 2] black = 0, 0, 0 if pygame.display.get_init(): print

  • python实现图书借阅系统

    本文实例为大家分享了python实现图书借阅系统的具体代码,供大家参考,具体内容如下 部分代码: from flask import Flask,render_template from flask import request from DB import createdb from flask import session app = Flask(__name__) app.config['SECRET_KEY'] = '123456' # 首页-->登录页面 @app.route('/')

  • python实现银行实战系统

    本文实例为大家分享了python实现银行实战系统的具体代码,供大家参考,具体内容如下 先附上源代码: │ admin.py                         管理员界面 │ alluser.txt                        保存用户信息 │ atm.py                             银行的各部分操作方法(存钱取钱等等) │ card.py                            定义卡的类 │ main.py      

随机推荐