python中对列表和循环使用的小练习

Posted Devilf

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中对列表和循环使用的小练习相关的知识,希望对你有一定的参考价值。

#author devilf

product_list = [
    (iphone,5800),
    (Mac Pro,9800),
    (Bike,800),
    (Watch,10000),
    (Coffee,123)
]
shop_list = []
salary = input(pls enter your salary: )

if salary.isdigit():                    #判断是否为整形,否则会退出
    salary = int(salary)
    while True:
        for index,info in enumerate(product_list):                  #打印列表
#            print(product_list.index(info),info)
            print(index,info)
        user_choice = input(pls enter what you buy\n>>>: )        #输入要购买的商品 编号
        if user_choice.isdigit():                   #再判断下输入的是否是数字,否则退出
            user_choice = int(user_choice)
            if user_choice <= len(product_list) and user_choice >= 0:       #判断输入的编号是否在商品列表的编号范围内
                p_item = product_list[user_choice]              #取出编号对应的商品名称
                if p_item[1] <= salary:             #判断改商品的价格是否在工资范围内
                    shop_list.append(p_item)        #如果在工资范围内,购买!
                    salary -= p_item[1]             #总工资便会减少对应的钱
                    print(Added %s into shopping cart,your current balance is %s %(p_item,salary))
                else:
                    print(your current balance is %s ,now is not enough % (salary))
            else:
                print(product %s is not exist! % user_choice )
        elif user_choice == q:                    #如果输入的是 q,便会退出
            print(-------------shopping list------------)
            for p in shop_list:
                print(p)
            print(quit.....,your current money: ,salary)
            exit()
        else:
            print(Invalid option)

 

以上是关于python中对列表和循环使用的小练习的主要内容,如果未能解决你的问题,请参考以下文章

如何在 FOR 循环中对 Python Pandas 列表中的元素执行字符串更改

Python 中使用 forwhile 循环打印杨辉三角练习(列表索引练习)。

去掉无序列表前默认加上的小圆点——实战练习需到的问题&解决办法mark

python中对列表元素大小排序

常用python日期日志获取内容循环的代码片段

为啥我在使用 PySimpleGUI 的 while 循环中对列表框的更新最终导致我的程序挂起?