为了账号安全,请及时绑定邮箱和手机立即绑定

这个代码为什么会出错?

# coding=gbk
shoping=[
    ("iphone",5900),
    ("mac pro",8000),
    ("office",1000),
    ("bike",500),
    ("car",10000),
    ("book",120),
]
shoping_list=[]  #这个表示选择商品后要存的位置
salary=int(input("请输入工资:")   #规定工资必须是整数
while True:
    for index,item in enumerate(shoping):      #返回商品的标
#enumerate 函数用于遍历序列中的元素以及它们的下标
#print(shoping.index(item),item)  #返回商品在列表中所在的位置
        print(index,item)         #输出商品的下标
    user_choice=input("选择要买啥?>>>:")
    if user_choice.isdigit():
        user_choice=int(user_choice)    #规定你选择商品的下标必须是整数
        if user_choice<len(shoping) and user_choice >=0:        #如果他的下标在商品之间
            p_item=shoping[user_choice]                          #商品价格等于在商品中哪一个中进行寻找元素
            if p_item[1]<=salary:#买得起                         #如果商品的价格<=工资
                shoping_list.append(p_item)                      #购物车增加商品
                salary-=p_item[1]                                #余额=工资-商品价格
                print("商品 %s 已经加入你的购物车,你的余额还剩:\033[31;1m %s\033[0m"%(p_item,salary))
                #输出信息
            else:
                print("\033[41:1m你的余额只剩[%s]啦,还买个毛线啊\033[0m]"%salary)
                #输出信息
        else:
            print("商品不存在!请重新输入商品。")
    elif user_choice=="q":
        print("---------shopping list-------")
        for p in  shoping_list:
            print(p)
        print("你的余额:",salary)
        exit()
    else:
        print("错误选项")


正在回答

2 回答

不知道你报什么错。

https://img1.sycdn.imooc.com//5ce7d3bc00016db011710594.jpg

# coding=utf-8

shoping=[("iphone",5900),("mac pro",8000),("office",1000),("bike",500),("car",10000),

    ("book",120),]

shoping_list=[]  #这个表示选择商品后要存的位置

salary = 10000  

user_choice1 = "2" 

for index,item in enumerate(shoping):

    print(index,item)

if user_choice1.isdigit():

user_choice = int(user_choice1) 

if user_choice < len(shoping) and user_choice >=0:

p_item=shoping[user_choice] 

if p_item[1]<=salary:

shoping_list.append(p_item) 

salary-=p_item[1] 

print("商品 %s 已经加入你的购物车,你的余额还剩:\033 %s\033"%(p_item,salary))

else:

print("\033[你的余额只剩[%s]啦,还买个毛线啊\]"%salary)

else:

print("商品不存在!请重新输入商品。")

elif user_choice=="q":

print("---------shopping list-------")

for p in  shoping_list:

print(p)

print("你的余额:",salary)

exit()

else:

print("错误选项")


0 回复 有任何疑惑可以回复我~

https://img1.sycdn.imooc.com//5ce791dc00016de002720021.jpg这个位置少了一个括号好好像

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758625    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

这个代码为什么会出错?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信