Python 元组

摘要:
元组一旦创建不能再修改,所以又叫只读列表写法:()只有两个方法countindex练习1'''2练习3需求:41.启动程序后,让用户输入工资,然后打印商品列表52.允许用户根据商品编号购买商品63.用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒74.可随时退出,退出时,打印已购买商品和余额8910分析:111.让用户输入salary122.商品列表133.开始让用户购买,for循环,已购

元组

  • 一旦创建不能再修改,所以又叫只读列表
  • 写法: ( )
  • 只有两个方法
    • count
    • index

练习

1 '''
2 练习
3 需求:
4 1. 启动程序后,让用户输入工资,然后打印商品列表
5 2. 允许用户根据商品编号购买商品
6 3. 用户选择商品后,检测余额是否够, 够就直接扣款, 不够就提醒
7 4. 可随时退出, 退出时,打印已购买商品和余额
8 
9 
10 分析:
11 1. 让用户输入salary
12 2. 商品列表
13 3. 开始让用户购买, for 循环, 已购买商品加入已购买商品列表
14 a. 输入商品名, salary和价格相比, 大于则可以购买,并添加已购买商品列表;小于则返回购买力不足.
15 b. 上述进程加入循环中. 并确定退出标志.
16 5. 循环结束后,打印已购买商品列表
17 
18 Note:上述方法暂时无法实现, 因为list没法像Java的list一样,有key/value组合, 无法根据key去匹配.所以暂时通过索引让用户去选择商品而不是商品名.
19 '''
20 
21 ''''
22 prod_list = [
23 ("iphone", 5000),
24 ("Mac Pro", 12000),
25 ("Starbuck", 31),
26 ("alex", 81),
27 ("Bike", 800)]
28 
29 shopping_list = []
30 
31 salary = input("salary: ")
32 if salary.isdigit():
33 salary = int(salary)
34 while True:
35 
36 取得商品及其索引 方法1: 
37 for item in prod_list:
38 print(prod_list.index(item),item)
39 break
40             
41 方法2:
42 for index, item in enumerate(prod_list)
43 print(index, item)
44 break
45      
46 for index, item in enumerate(prod_list):
47 print(index, item)
48 
49 user_choice = input("选择要买的商品: ")
50 if user_choice == "quit":
51 print("已购买商品清单:", shopping_list)
52 break
53 else:
54 if user_choice.isdigit():
55 user_choice = int(user_choice)
56 if (user_choice <= len(prod_list) - 1) & (user_choice >= 0):
57 p_item = prod_list[user_choice]
58 if salary >= p_item[1]:
59 shopping_list.append(p_item)
60 salary = salary - p_item[1]
61 print("已购买商品清单:", shopping_list)
62 print("========================")
63 else:
64 print("余额不足")
65 else:
66 print("商品不存在")
67 else:
68 print("请选择商品")
69 
70 '''
71 
72 
73 prod_list =[
74     ("iphone", 5000),
75     ("Mac Pro", 12000),
76     ("Starbuck", 31),
77     ("alex", 81),
78     ("Bike", 800)]
79 
80 shopping_list =[]
81 
82 salary = input("salary: ")
83 ifsalary.isdigit():
84     salary =int(salary)
85     whileTrue:
86         for index, item inenumerate(prod_list):
87             print(index,item)
88 
89         user_choice = input("要买什么? ")
90         ifuser_choice.isdigit():
91             user_choice =int(user_choice)
92             if len(prod_list) > user_choice >=0:
93                 p_item =prod_list[user_choice]
94                 if salary>=p_item[1]:  #买得起
95 shopping_list.append(p_item)
96                     salary-=p_item[1]
97                     print("Added %s into shopping cart, your current balance is 

免责声明:内容来源于网络,仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇分布式监控系统之Zabbix proxyMutual Information下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

python 打包下载 zipfile &amp;amp; tarfile

看百度网盘我们会发现这么一个需求,新建一个文件夹,然后向文件夹中上传文件,点击文件夹可以直接下载,下载的是一个压缩文件,将文件夹中所有文件全部打包了下载下来。 在python中,我们要做文件打包下载,需要用到模块 zipfile 一、python自带zipfile 模块用来读写压缩文件(可处理除了zip类型之类,还可以处理rat,war,jar等类型)  ...

包管理器conda与Python

什么是conda? conda是一个包管理器。值得注意的是,它不仅仅是Python的包管理器,而是一个通用的包管理器,当初设计时被用来管理任何语言的包。在目前来看,conda环境中所有语言的包管理,都是为了Python而服务的。 Anaconda与Miniconda Anaconda是一个Python的发行版,内置了众多Python包和附加软件(pydat...

Python中的可视化神器:pyecharts

pyecharts是一款将python与echarts结合的强大的数据可视化工具,本文将为你阐述pyecharts的使用细则 前言 我们都知道python上的一款可视化工具matplotlib,而前些阵子做一个Spark项目的时候用到了百度开源的一个可视化JS工具-Echarts,可视化类型非常多,但是得通过导入js库在Java Web项目上运行,平时用P...

Python3 -- 查看python安装路径以及pip安装的包列表及路径

1. 查看python路径终端输入命令: whereis python 假设你的电脑上同时安装了python2和python3,可以使用使用以下命令分别查看其安装路径: whereis python2 whereis python3 2.查看使用pip安装的软件包默认python3 pip list python2查看pip安装的软件包名称及版本 pyth...

python基础二

一、pycharm使用 1、创建python新工程 2、添加内容文件及其位置 3、python调整字体,按住Ctrl+鼠标滑轮上下,pycharm设置在【File】-->【Settings】打开 设置:可以在【File】-->【Settings】-->【Editor】-->【General】的选项里进行设置 4、python...

python中print函数的使用小技术-使用分隔符和行尾符

关于python3中,print函数,可以同时打印输出多个和多种类型数据,如下: >>> print(1,"abc",2,"https://www.cnblogs.com/5201351",True) 1 abc 2 https://www.cnblogs.com/5201351True >>> 如上可以看出,各项默认以...