python模拟购物模块_PYTHON学习第一模块 购物车模拟

购物车模拟

需求:

用户入口

商品信息存在文件里

已购商品,余额记录

商家入口

可以添加商品,修改商品价格

说明:

python版本为3.6

用户入口及商户入口的菜单列表均存在goods_list文件中。

代码:

商家入口:

# /usr/bin/env python

# -*- coding: utf-8 -*-

# AUTHOR:Fio

import os

Goods_list = []

def add_good():

goods_name_input = input("输入新增商品的名称:")

goods_price_input = input("输入新增商品的价格:")

goods_add = [goods_name_input, goods_price_input]

Goods_list.append(goods_add)

print("新增商品后的菜单:")

for index, item in enumerate(Goods_list):

print(index, item)

with open('./goods_list_tmp', 'w') as goods2:

for count in range(len(Goods_list)):

goods2.write("%s " % (Goods_list[count][0]))

goods2.write("%s\n" % (Goods_list[count][1]))

os.remove('./goods_list')

os.rename('./goods_list_tmp', './goods_list')

def modify_good():

for index, item in enumerate(Goods_list):

print(index, item)

goods_name_input = input("输入需要修改商品的名称:")

for count in range(len(Goods_list)):

if Goods_list[count][0] == goods_name_input:

print("修改前的价格:%s" % Goods_list[count][1])

goods_price_input = input("输入修改后的价格:")

Goods_list[count][1] = goods_price_input

with open('./goods_list_tmp', 'w') as goods2:

for count in range(len(Goods_list)):

goods2.write("%s " % (Goods_list[count][0]))

goods2.write("%s\n" % (Goods_list[count][1]))

os.remove('./goods_list')

os.rename('./goods_list_tmp', './goods_list')

print("修改后的商品价格")

for index, item in enumerate(Goods_list):

print(index, item)

if __name__ == "__main__":

with open('./goods_list', 'r') as goods1:

for line in goods1:

Goods_list.append(line.split())

while True:

print('''

###############################

# 欢迎进入商家入口:

#

# 1. 新增商品内容

# 2. 修改商品价格

###############################

''')

order_num = input("选择序号:")

if order_num == '1':

add_good()

elif order_num == '2':

modify_good()

elif order_num == 'q':

exit()

else:

print("请输入正确的序号")

用户入口:

# /usr/bin/env python

# -*- coding: utf-8 -*-

# AUTHOR:Fio

Goods = []

Carts = []

with open('./goods_list', 'r') as goods1:

for line1 in goods1:

Goods.append(line1.split())

# 记录账户内容

def account():

with open('./account', 'r') as balance:

money = balance.read()

if money == "":

salary = int(input('输入你的工资:'))

else:

with open('./carts', 'r') as carts_record:

goods = carts_record.read()

print("您已购买的商品%s" % goods)

salary = int(money)

print("您的账户余额%s" % salary)

return salary

# 购物车操作

def carts(salary):

while True:

for index, item in enumerate(Goods):

print(index, item)

choice = input('选择您要购买的商品序号:')

if choice.isdigit():

goods_num = int(choice)

if len(Goods) > goods_num >= 0:

g_item = Goods[goods_num]

g_price = int(g_item[1])

if g_price < salary:

salary -= g_price

Carts.append(Goods[goods_num])

print('您购买的商品:\033[31;1m%s\033[0m,您的余额还剩下:\033[31;1m%s\033[0m'

% (Goods[goods_num], salary))

with open('./carts', 'w') as carts_record:

carts_record.write(str(Goods[goods_num]))

else:

print('您已购买的商品:\033[31;1m%s\033[0m,且您的余额\033[31;1m%s\033[0m不足以购买%s.'

% (Carts, Goods[goods_num], salary))

with open('./account', 'w') as balance:

balance.write(str(salary))

exit()

elif choice == 'q':

print('您已经购买的商品:\033[31;1m%s\033[0m,您还剩下的余额为:\033[31;1m%s\033[0m' % (Carts, salary))

with open('./carts', 'w') as carts_record:

carts_record.write(str(Goods[goods_num]))

with open('./account', 'w') as balance:

balance.write(str(salary))

exit()

else:

print('请选择购买的商品!')

if __name__ == "__main__":

Money = account()

carts(Money)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值