1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
- salary
- =
- int
- (
- input
- (
- "please input your salary:"
- ))
- #输入薪资
- product_list
- =
- [[
- "iphone"
- ,
- 5888
- ],
- #定义商品列表
- while
- True
- :
- #循环打印可购买商品列表及退出提示
-
- for
- number
- in
- range
- (
- len
- (product_list)):
-
- product
- =
- product_list[number]
-
- choice
- =
- input
- (
- "输入你所选择的商品编号>>:"
- ).strip()
- #输入选择的商品编号或退出“q”
-
- if
- choice.isdigit():
- #判断输入的是否为整数
-
- if
- choice <
- len
- (product_list)
- and
- choice >
- =
- 0
- :
- #判断输入的数字是否商品编号范围内
-
- product
- =
- product_list[choice]
- #定义要买的商品列表
-
- if
- salary
- -
- product[
- 1
- ] >
- =
- 0
- :
- #判断是否买的起
-
- salary
- -
- =
- product[
- 1
- ]
- #买的起自动结算
-
- print
- (
- "将商品"
- ,product[
- 0
- ],
- "加入购物车,"
- ,
- "你目前还有余额"
- ,salary,
- "元"
- )
- #输出当前本次操作信息及余额
-
- if
- product[
- 0
- ]
- in
- product_cart:
- #判断购买的商品是否在购物车里
-
- product_cart[product[
- 0
- ]][
- 1
- ]
- +
- =
- 1
- #在购物车里,则商品对应的数量+1
-
- else
- :
- #不在购物车里,则将商品信息,商品单价,数量加入购物车内
-
- product_cart[product[
- 0
- ]]
- =
- [product[
- 1
- ],
- 1
- ]
-
- print
- (
- "目前你的购物车"
- ,product_cart)
-
- else
- :
- #买不起则打印当前余额及差的金额。结束本次循环,重新开始循环,打印可购买商品列表及退出提示
-
- print
- (
- "你目前还有余额"
- , salary,
- "元,"
- ,
- "还差"
- , product[
- 1
- ]
- -
- salary,
- "元"
- )
-
- else
- :
- #输入的数字不在商品编号范围内,返回上一循环,打印可购买商品列表及退出提示
-
- elif
- choice
- =
- =
- "q"
- :
- #输入的不是数字为字符串“q”,打印已购买商品信息及总花销
-
- print
- (
- "---------你购买的商品如下---------"
- )
-
- print
- (
- "id"
- ,
- "\t"
- ,
- "商品"
- ,
- "\t"
- ,
- "数量"
- ,
- "\t"
- ,
- "单价"
- ,
- "\t"
- ,
- "总价"
- )
-
- print
- (id_counter,
- "\t"
- ,
- #依序打印购物车商品编号,商品,数量,单价及总价
-
- product_cart[key][
- 1
- ],
- "\t\t"
- ,
-
- product_cart[key][
- 0
- ],
- "\t"
- ,
-
- product_cart[key][
- 1
- ]
- *
- product_cart[key][
- 0
- ])
-
- total_cost
- +
- =
- product_cart[key][
- 1
- ]
- *
- product_cart[key][
- 0
- ]
- #定义总花销
-
- print
- (
- "总计价格为"
- ,total_cost)
-
- print
- (
- "------------end------------"
- )
-
- else
- :
- #输入的既不是整数,也不是字符串“q”,提示信息错误
|