现有商品列表如下: products = [ ['Iphone8',6888], ['MacPro',14800], ['小米6',2499],['Coffee',31],['Book',80],['Nike Shoes',799] ]。(20分) 首先,需打印出这样的格式:(5分) ---------商品列表---------- 0 Iphone8 6888 1 MacPro 14800 2 小米6 2499 3 Coffee 31 4 Book 80 5 Nike Shoes 799 然后,写一个循环
时间: 2023-10-10 14:12:58 浏览: 183
来实现用户输入商品编号,然后打印出相应商品的名称和价格。具体代码如下:(15分)
```python
# 商品列表
products = [['Iphone8', 6888], ['MacPro', 14800], ['小米6', 2499], ['Coffee', 31], ['Book', 80], ['Nike Shoes', 799]]
# 打印商品列表
print('---------商品列表----------')
for i in range(len(products)):
print(i, products[i][0], products[i][1])
# 用户输入商品编号
while True:
num = input('请输入商品编号(输入q退出):')
if num == 'q':
break
elif not num.isdigit() or int(num) >= len(products):
print('输入错误,请重新输入!')
else:
index = int(num)
print('您选择的商品是:', products[index][0], ',价格为:', products[index][1], '元')
```
相关问题
0 Iphone8 6888 1 MacPro 14800 2 小米6 2499 3 Coffee 31 4 Book 80 5 Nike Shoes 799 然后,写一个循环,不断的问用户想买什么,用户选择一个商品编号,就把对应的商品添加到购物车里, 最终用户输入q退出时,打印购物车里的商品列表,并输出“此次购物的花费合计是: XXX元”。(15分)
好的,我可以帮你写一个 Python 版本的代码来实现这个功能。请看下面的代码:
```python
# 商品列表
products = {
"0": {"name": "Iphone8", "price": 6888},
"1": {"name": "MacPro", "price": 14800},
"2": {"name": "小米6", "price": 2499},
"3": {"name": "Coffee", "price": 31},
"4": {"name": "Book", "price": 80},
"5": {"name": "Nike Shoes", "price": 799},
}
# 购物车
cart = []
# 循环询问用户购买商品
while True:
print("请输入您想购买的商品编号(输入 q 结束购物):")
for key, value in products.items():
print(key, value["name"], value["price"])
choice = input()
if choice == "q":
break
elif choice in products:
cart.append(products[choice])
print("已将商品", products[choice]["name"], "加入购物车")
else:
print("输入有误,请重新输入")
# 打印购物车商品列表和花费合计
total_cost = 0
print("您购买的商品列表如下:")
for item in cart:
print(item["name"], item["price"])
total_cost += item["price"]
print("此次购物的花费合计是:", total_cost, "元")
```
代码的逻辑很简单,就是一个 while 循环,不断询问用户想买的商品编号,然后将对应的商品添加到购物车里。当用户输入 q 时,退出循环,打印购物车商品列表和花费合计。在代码中,我使用了一个字典来存储商品信息,其中键是商品编号,值是一个字典,包含商品名称和价格两个键值对。购物车是一个列表,每个元素都是一个字典,表示一个购买的商品。
(列表综合练习)+购物车程序:+需求:+ 启动程序,让用户输入工资,然后打印商品列表+ products·=·[[Iphone8,6888],[MacPro1480[小米62499][Coffee31['Book80]'Nike shoes,799]](可以购买的物品列表)+允许用户根据商品编号购买商品;4 用户输入商品列表后检测余额是否足够,够就直接扣款,不够就提醒;"用户可以一直购买商品,也可以直接退出,退出后打印已购买商品和余额
以下是购物车程序的实现,使用了列表综合和条件语句:
```python
products = [["Iphone8", 6888], ["MacPro14", 14800], ["小米6", 2499], ["Coffee3", 18], ["Book8", 80], ["Nike shoes", 799]]
balance = input("请输入您的工资:")
if balance.isdigit():
balance = int(balance)
while True:
print("商品列表:")
for i, p in enumerate(products):
print(i, p[0], p[1])
choice = input("请输入商品编号进行购买,按q退出:")
if choice == "q":
break
if choice.isdigit():
choice = int(choice)
if choice >= 0 and choice < len(products):
if balance >= products[choice][1]:
print("购买成功:", products[choice][0])
balance -= products[choice][1]
else:
print("余额不足!")
else:
print("商品编号不存在!")
else:
print("输入错误!")
print("已购买商品:")
for p in products:
if balance < p[1]:
break
print(p[0])
balance -= p[1]
print("余额:", balance)
else:
print("输入错误!")
```
运行程序后,用户需要输入工资,然后程序会打印商品列表。用户可以输入商品编号进行购买,直到输入q退出。如果购买的商品价格超过了余额,程序会提醒余额不足;否则,程序会直接扣款,并打印购买成功的商品名。退出后,程序会打印已购买的商品名和余额。
阅读全文