列表——元组——字典——集合:

列表:


# 一:基本使用
# 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_列表——元组——字典——集合的更多相关文章

  1. python中列表 元组 字典 集合的区别

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...

  2. **python中列表 元组 字典 集合

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...

  3. python3笔记十八:python列表元组字典集合文件操作

    一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle  #数据持久性模块 #封装的方法def OptionData(data,path):    # ...

  4. python的学习笔记01_4基础数据类型列表 元组 字典 集合 其他其他(for,enumerate,range)

    列表 定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素 特性: 1.可存放多个值 2.可修改指定索引位置对应的值,可变 3.按照从左到右的顺序定义列表元素,下标从0开始顺序访问 ...

  5. Day 07 数据类型的内置方法[列表,元组,字典,集合]

    数据类型的内置方法 一:列表类型[list] 1.用途:多个爱好,多个名字,多个装备等等 2.定义:[]内以逗号分隔多个元素,可以是任意类型的值 3.存在一个值/多个值:多个值 4.有序or无序:有序 ...

  6. python 中列表 元组 字典 集合的区别

    先看图片解释 (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计过去一周我们买过的东西,把这些东西列出来,就是清单.由于我们买一种东西可能不止一次,所以清单中是允许有重复 ...

  7. Python数据类型-布尔/数字/字符串/列表/元组/字典/集合

    代码 bol = True # 布尔 num = 100000000; # 数字 str = "fangbei"; # 字符串 str_cn = u"你好,方倍" ...

  8. python 列表 元组 字典 集合

    列表 lst = [i for i in range(10)] 切片 # 把下标小于2的显示出来 print(lst[:2]) # 把10个数有大到小输出 print(lst[::-1]) # 把下标 ...

  9. Python 列表&元组&字典&集合

    列表(list) 有序性,可存储任意类型的值 通过偏移存取,支持索引来读取元素,第一个索引为0 ,倒数第一个索引为-1 可变性 ,支持切片.合并.删除等操作 可通过索引来向指定位置插入元素 可通过po ...

随机推荐

  1. Codeforces Round #497 (Div. 2) A. Romaji

    Bryce1010模板 http://codeforces.com/contest/1008/problems #include <bits/stdc++.h> using namespa ...

  2. 如何在VirtualBox虚拟机中安装XP系统? 转

    关闭VM (windows 7 )的方法, 使用 退出 保持状态 开启VM (windows 7 )的方法, 选择启动 ######Iissue 1 网络连接不上,可以重新初始化 网络连接. #### ...

  3. Spring的ioc(DI)复习概念和原理简介

    IOC的好处 ioc或者说di的概念很显然了,反转控制和依赖注入,那本来直接new就行的东西,为什么要搞这么复杂呢?? 开发维护方便,高层设计不用依赖底层的,不然底层一个类改下构造器,高层就全要改,因 ...

  4. python学习之模块:

    每个.py文件就是一个以文件名作为区别的模块,模块化编程便于维护.其它模块要调用某个模块的变量和函数就要用import 模块,然后通过模块.函数.模块.变量来引用. 为防止模块间变量和函数乃至模块名的 ...

  5. Nginx pathinfo模式配置

    正常配置 location ~ \.php$ { fastcgi_pass ; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $docu ...

  6. [转]NopCommerce之视图设计

    本文转自:http://blog.csdn.net/hygx/article/details/7324452 Designer's Guide   Contents Overview  概述 Inst ...

  7. SVN中如何去除版本控制器

    SVN,大家都熟悉,做项目都知道,不知道你有没有遇到每次提交的代码的时候,都会把bin和obj自动生成的文件夹提交SVN服务器上 其实这里都不需要提交,每次生成都提交,可能还会容易冲突,如何不让bin ...

  8. nodejs 快要变成爬虫界的王者

    nodejs 快要变成爬虫界的王者 爬虫这东西是很多数据采集必须要的东西. 但是现在随着网页不断发展,已经出现了出单纯的网页,到 ajax 网页, 再到 spa , 再到 websocket 应用,一 ...

  9. Eclipse集成Maven环境(出现jar的解析或者缺失问题)(或者出现Invalid classpath publish/export dependency /common. Project entries not supported)的统一整理

    在正确配置完Maven,和Maven IntegrationFor Eclipse之后,新建了一个Maven Project 和一个Maven Module,发现新建的Module项目下的pom.xm ...

  10. win10 64位 mysql安装过程出现status显示failed

    mysql安装过程出现status显示failed,如下图: 由于我的电脑是64位系统,这里需要升级一个插件,即32位 visual C++ 2013 and  visual C++ redistri ...