python_列表——元组——字典——集合
列表——元组——字典——集合:
列表:
# 一:基本使用
# 1、用途:存放多个值 # 定义方式:[]内以逗号为分隔多个元素,列表内元素无类型限制
# l=['a','b','c'] #l=list(['a','b','c'])
# l1=list('hello')
# print(l1) # 常用操作+内置的方法 # 按索引存取值(正向存取+反向存取):即可改也可以取
l = ['a', 'b', 'c']
print(id(l))
print(l[-1])
l[0] = 'A'
print(id(l))
print(l)
l[3] = 'd' # 报错 # 2、切片(顾头不顾尾,步长)
stus = [1,2,3,'a','b','c'] print(stus[1:3]) # 3、长度
# stus = [1,2,3,'a','b','c']
# print(len(stus)) # 4、成员运算in和not in
# stus = [1,2,3,'a','b','c']
# print('a' in stus) # 5、追加
# stus = [1,2,3,'a','b','c']
# stus.append('d')
# stus.append('c')
# print(stus)
# 插入
# stus = [1,2,3,'a','b','c']
# stus.insert(1,'x')
# print(stus) # 6、删除
# stus = [1,2,3,'a','b','c']
# del stus[1]
# print(stus)
# stus.remove('a')
# print(stus) # stus.pop(1)
# stus.pop() # 默认删除末尾
# print(stus) # res1=stus.remove('c') # 单纯的删除
# print(res1)
# res2=stus.pop(0) # 取走一个值
# print(res2) # 7、循环
# stus = [1,2,3,'a','b','c']
# 依赖索引
# i=0
# while i < len(stus):
# print(stus[i])
# i+=1 # for i in range(len(stus)):
# print(i,stus[i]) # 不依赖索引
# for item in stus:
# print(item) # 补充for循环
# for i in range(0,5,2): #0 2 4
# print(i)
# for i in range(10):#默认从零起始
# print(i) # for i in range(10,-2,-1):
# print(i)
元组:
# 元组:相当于不可变的列表 # t = (1, 2, 3, 'a', 'b', 'c')
# print(id(t[2])) # 用途:当存放的多个值,只有读的需求,没有改的需求时,可以用元组 # 常用操作:
# 依赖索引 # t = (1, 2, 3, 'a', 'b', 'c')
#
# i = 0
# while i < len(t):
# print(t[i])
# i += 1
#
# for i in range(len(t)):
# print(t[i])
#
#
# # 不依赖索引
# for item in t:
# print(item)
#
# list('hello')
# v = list(t)
# v = set(t)
# v = tuple(t)
字典:
# 根据数列,创建字典,并制定统一的值:
dic = {
'asd': '',
'qx': 'cac'
}
# v = dict.fromkeys(['asd', 113, 'gsd'],123)
# v = dic['qx']
# v = dic.get('aad',12321)
# v = dic.pop('aasd', 121)
# v = dic.popitem()
# v = dic.setdefault('qx', '12e')
# v = dic.update({'qwd':'1321','fas':1231})
# print(dic)
# print(v)
# dic.keys() .values() .items() .get() .update()
集合:
# 定义:
# s1={1,2,3, 'a', 'b', 'c'}
# s2={4,5,6, 'a', 'b'}
# 注意:
# 集合无序
# 集合内元素不能重复
# 集合内的元素必须为不可变类型,但set集合是可变
# 用途:
# 集合使用来进行关系元素,单独取集合的某一个元素是没有意义,也没有相应的方法
#
# 交集:s1 & s2取两个集合的共同部分
# 差集:s1-s2,结果存于s1而不存于s2的元素集合
# 补集:s1 ^ s2,扣掉s1与s2共同部分,剩下的部分合到一起
# 并集:s1 | s2把两个合到一起,去掉重复
购物程序:
product_list=[
('Mac Book',9000),
('Mate Book',8000),
('Magic Book',5000),
('Think Pad',4000),
('Lenovo',5000),
('SAMSUNG',7000),
('OPPO',3000),
('MI',2500),
('HUAWEI',4500),
]
saving=input('请输入你的钱:')
shopping_car=[]
if saving.isdigit():
saving=int(saving)
while True: for i,v in enumerate(product_list,1): print(i,'>>>>',v)
choice=input('请选择购买的商品号:[结束购买请输入:W]: ')
if choice.isdigit():
choice=int(choice)
if choice>0 and choice<=len(product_list): p_item=product_list[choice-1]
if p_item[1]<saving:
saving-=p_item[1]
shopping_car.append(p_item)
else:
print('余额不足,还剩%s'%saving)
print(p_item)
else: print('您输入的号码不正确,请重新输入') elif choice=='W': print(
'------------您已经购买如下商品--------------'
)
for i in shopping_car:
print(i)
print('您还剩%s元钱'%saving)
break
else:
print('invalid input')
python_列表——元组——字典——集合的更多相关文章
- python中列表 元组 字典 集合的区别
列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...
- **python中列表 元组 字典 集合
列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...
- python3笔记十八:python列表元组字典集合文件操作
一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle #数据持久性模块 #封装的方法def OptionData(data,path): # ...
- python的学习笔记01_4基础数据类型列表 元组 字典 集合 其他其他(for,enumerate,range)
列表 定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素 特性: 1.可存放多个值 2.可修改指定索引位置对应的值,可变 3.按照从左到右的顺序定义列表元素,下标从0开始顺序访问 ...
- Day 07 数据类型的内置方法[列表,元组,字典,集合]
数据类型的内置方法 一:列表类型[list] 1.用途:多个爱好,多个名字,多个装备等等 2.定义:[]内以逗号分隔多个元素,可以是任意类型的值 3.存在一个值/多个值:多个值 4.有序or无序:有序 ...
- python 中列表 元组 字典 集合的区别
先看图片解释 (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计过去一周我们买过的东西,把这些东西列出来,就是清单.由于我们买一种东西可能不止一次,所以清单中是允许有重复 ...
- Python数据类型-布尔/数字/字符串/列表/元组/字典/集合
代码 bol = True # 布尔 num = 100000000; # 数字 str = "fangbei"; # 字符串 str_cn = u"你好,方倍" ...
- python 列表 元组 字典 集合
列表 lst = [i for i in range(10)] 切片 # 把下标小于2的显示出来 print(lst[:2]) # 把10个数有大到小输出 print(lst[::-1]) # 把下标 ...
- Python 列表&元组&字典&集合
列表(list) 有序性,可存储任意类型的值 通过偏移存取,支持索引来读取元素,第一个索引为0 ,倒数第一个索引为-1 可变性 ,支持切片.合并.删除等操作 可通过索引来向指定位置插入元素 可通过po ...
随机推荐
- 简单的Javascript图片延迟加载库Echo.js
简介: 和 Lazy Load 一样,Echo.js 也是一个用于图像延迟加载 JavaScript.不同的是 Lazy Load 是基于 jQuery 的插件,而 Echo.js 不依赖于 jQue ...
- 关于JVM的一些东西
1.在JDK1.6(HotSpot虚拟机)及之前,运行时常量池(属于方法区的一部分)是永久代的,而在JDK1.7之后运行时常量池(里面用于存放编译期生成的各种字面量和符号引用,这部分内容将在类加载后进 ...
- oracle tps
http://blog.csdn.net/nilxin/article/details/5812480 sample 1: 定义 TPS:Transactions Per Second(每秒传输的事物 ...
- jQuery制作一个多彩下拉菜单按钮
最终效果图: html代码: <div id="list"> <div id="btn"> <div class="ic ...
- Redis基础理论
一.概述 二.数据类型 STRING LIST SET HASH ZSET 三.数据结构 字典 跳跃表 四.使用场景 计数器 缓存 查找表 消息队列 会话缓存 分布式锁实现 其它 五.Redis 与 ...
- ECSHOP商品属性调用到任意页面方法
看到标题有的人觉得这个很复杂,其实这个没那么复杂,直接用下面的方法,就可以在ECSHOP的任意页面调用商品属性. 一)打开includes\lib_insert.php文件,在最后面增加一个函数: f ...
- Objective-C Loops
There may be a situation, when you need to execute a block of code several number of times. In gener ...
- ls参数
-a 全部文件 -A 与a差不多,但是不包括.和..开头的两个目录 -d 仅列出目录 -f 直接列出结果,不进行排序 -h 列出文件大小 -i 列出inode的位置,而非列出文件属性 -l 列出长数据 ...
- ThreadLocal使用,应用场景,源码实现,内存泄漏
首先,ThreadLocal 不是用来解决共享对象的多线程访问问题的,一般情况下,通过ThreadLocal.set() 到线程中的对象是该线程自己使用的对象,其他线程是不需要访问的,也访问不到的.各 ...
- 如何让Spring MVC显示自定义的404 Not Found页面
不知道大家对千篇一律的404 Not Found的错误页面是否感到腻歪了?其实通过很简单的配置就能够让Spring MVC显示您自定义的404 Not Found错误页面. 在WEB-INF的web. ...