Day2 列表,元组,字典,集合
一,列表
定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素.
list=['alex', 'jack', 'chen', 'shaoye'] #创建一个列表.
特性:
1.可存放多个值
2.按照从左到右的顺序定义列表元素,下标从0开始顺序访问,有序.
3.索引位置的值是可以被修改的.
# 列表的操作
# 切片
list[0] #获取列表第一个元素
list[0:3] # 获取列表1-4之间的元素,不包括第4个.
list[-1] # 取列表最后一个元素
# 索引
list.index('chen') # 获取chen在列表中的索引位置.
# 追加
list.append('nick') # 添加一个元素到列表的尾部
# 删除
list.remove('alex') # 删除alex这个元素.
list.clear() # 清空列表
list.pop() # 默认删除列表中最后一个元素,并返回该元素.
# 插入
list.insert(1, 'maya') # 在列表1的位置,插入一个元素.
# 修改
list[1] = 'junkec' # 把索引值是1的元素修改成junkec
# 统计次数
list.count('shaoye') # 统计shaoye在列表中出现的次数.
二,元组
定义:tu = (1,2,3) 定义一个元组,元素用逗号隔开.
tup = (1,2,3,4,5,6,5,4,3) # 定义一个元组
特性:
1.元组里的元素不可变.不能被修改.
2.可以存放多个值.
3.元组的下标从0开始.
作用:
由于元组具有不可变的性质,可以用元组来定义连接数据库等操作.
# 元组的操作
# 切片
tup[0] # 获取元组第一个元素值.
tup[0:3] #获取1-4之间的元素值,不包括第四个.
# 连接元组,由于元组不可修改.我们无法修改元素值.但是可以把2个元组合成一个.
tup1 = (1,2,6)
tup2 = ('a', 'b', 'c')
tup3 =tup1 + tup2
#删除整个元组
del tup
三,字典
定义:{'k1':'v1', 'k2':'v2', 'k3':'v3'} # k1和v1构成一个键值对,键和值用:分开,键值对之间使用逗号隔开.
特性:
1.键的类型必须是可hash且为不可变的数据类型,必须唯一
2.可以存放多个值,值可以不唯一.
3.结构是key-value
4.无序.字典是没有顺序的.
dic = {'k1':'v1', 'k2':'v2', 'k3':'v3'}
dic2 = {'a':'', 'b':2}
# 增加
dic['k4'] = 'v4' # 增加一个k4的键值对.
print(dic)
# {'k1': 'v1', 'k2': 'v2', 'k3': 'v3', 'k4': 'v4'}
# 取键,键值,键值对
dic.keys() # 获取字典中所有的key以列表的形式.
print(dic.keys())
# dict_keys(['k1', 'k2', 'k3', 'k4'])
dic.values() # 获取字典中所有的value以列表的形式.
print(dic.values())
dic.items()
print(dic.items()) # 获取字典中所有的key-value以元组的形式.
# dict_items([('k1', 'v1'), ('k2', 'v2'), ('k3', 'v3'), ('k4', 'v4')])
# 删除
dic.pop('k1') # 删除指定的键值对.如果键值对不存在,报错.
print(dic)
# {'k2': 'v2', 'k3': 'v3', 'k4': 'v4'}
dic.clear() # 清空字典
# 修改
dic['k1'] = 'kkk' #修改k1的键值为kkk
dic.update(dic2) # 将dic2的键值对添加到dic中.
print(dic)
# {'k1': 'v1', 'k2': 'v2', 'k3': 'v3', 'a': '1', 'b': 2}
# 查看
dic.get('k5','nothing') # 获取k5的键
# nothing
dic['k1'] # 如果key不在字典中,会报错.
for k in dic.items(): # 输出所有的键值对.
print(k)
'''
('k1', 'v1')
('k2', 'v2')
('k3', 'v3') '''
for k in dic.keys(): #输出所有的key
print(k) '''
k1
k2
k3
'''
for k in dic: #输出所有的key
print(k)
'''
k1
k2
k3
'''
四,集合
定义:{1,2,3,4} 定义一个集合.也是使用花括号.看上去和字典类型差不多.不要弄混淆了.
特性:
1.去重.
2.关系运算.
3.无序.因为无序特性的存在,所以{2,4,5,6,7}和{4,6,2,5,7}是同一个集合.
set = {'alex','ago','marry','jack','lucy'}
set1 = {'lili','tiger','eric','ago','jack'}
#集合的运算关系
# 交集,取即在set中又在set1的元素.
print(set.intersection(set1)) # 获取2个集合的交集
print(set&set1) # 使用连接符&也可以表示交集.
#并集,合并2个集合
print(set.union(set1))
print(set|set1) #使用管道符|求并集.
# 差集
print(set.difference(set1)) # 取不在set1中的元素.
print(set-set1)
print(set1.difference(set)) # 取不在set中的元素
print(set1-set)
# 对称差集,只在set或set1里的元素
print(set.symmetric_difference(set1))
print(set^set1)
# 集合判断
print(set.isdisjoint(set1)) #判断2个集合是不是不相交!注意是判断不相交 !返回False 表示相交,返回True表示不相交
print(set.issubset(set1)) # 判断集合是不是被其他集合所包含
print(set.issuperset(set1)) #判断集合是不是包含其他集合
#增加
set.add("mayun") # 向集合中添加一个元素.
print(set)
# {'marry', 'ago', 'alex', 'jack', 'mayun', 'lucy'}
set.update('china') # 增加集合序列,把传入的字符串,拆分成单个,然后添加到集合.
print(set)
# {'c', 'jack', 'i', 'lucy', 'ago', 'alex', 'mayun', 'n', 'h', 'a', 'marry'}
#删除
set.discard('alex') # 删除alex这个元素,如果元素不存在集合中,不会报错.
print(set)
# {'n', 'jack', 'ago', 'lucy', 'mayun', 'h', 'c', 'i', 'a', 'marry'}
set.remove('lucy') #删除一个元素,如果元素不在集合中,报keyerror错误.
print(set)
# {'n', 'ago', 'c', 'jack', 'a', 'mayun', 'i', 'marry', 'h'}
set.pop() #由于集合无序,所以被删除的元素是随机的.
print(set)
# {'lucy', 'jack', 'marry', 'ago'}
set.clear() #清空集合
print(set)
# set()
Day2 列表,元组,字典,集合的更多相关文章
- python中列表 元组 字典 集合的区别
列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...
- **python中列表 元组 字典 集合
列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...
- python_列表——元组——字典——集合
列表——元组——字典——集合: 列表: # 一:基本使用# 1.用途:存放多个值 # 定义方式:[]内以逗号为分隔多个元素,列表内元素无类型限制# l=['a','b','c'] #l=list([' ...
- 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]) # 把下标 ...
随机推荐
- 寒假特训——搜索——H - Nephren gives a riddle
What are you doing at the end of the world? Are you busy? Will you save us? Nephren is playing a gam ...
- BSOJ 5603 -- 【SNOI2017】炸弹
题好数据水系列,网上的十几行神仙解法A了原数据. 这道题要用到线段数优化建图的知识.然而考试考到这道题时我还不会. 我们设分别表示每个炸弹向左和向右最远能炸到哪个炸弹.很容易想到一个思路,就是每个炸弹 ...
- SQlite源码分析-体系结构
体系结构 在内部,SQLite由以下几个组件组成:内核.SQL编译器.后端以及附件.SQLite通过利用虚拟机和虚拟数据库引擎(VDBE),使调试.修改和扩展SQLite的内核变得更加方便.所有SQL ...
- vector--不定长数组
(一些很基础的东西) vector就是一个不定长数组 vector<int>a (黄色部分可替换) a.size() 读取它的大小 a.resize() 改变大小 a.push_back( ...
- Java网络编程中异步编程的理解
目录 前言 一.异步,同步,阻塞和非阻塞的理解 二.异步编程从用户层面和框架层面不同角度的理解 用户角度的理解 框架角度的理解 三.为什么使用异步 四.理解这些能在实际中的应用 六.困惑 参考文章 前 ...
- Python爬取豆瓣指定书籍的短评
Python爬取豆瓣指定书籍的短评 #!/usr/bin/python # coding=utf-8 import re import sys import time import random im ...
- Windows Community Toolkit 4.0 - DataGrid - Part02
概述 在上面一篇 Windows Community Toolkit 4.0 - DataGrid - Part01 中,我们针对 DataGrid 控件的 CollectionView 部分做了详细 ...
- 简单使用redis实现sso单点登录
前面几篇分享了nosql只mongodb,今天简单分享另一个nosql神兵redis. 主要模仿sso单点登录,将登录人信息写入redis.话不多说,直接上马,驾. /// <summary&g ...
- MSSQL清理日志\删除数据\收缩数据库
首先解释一下数据库的版本是SQL Server 2012.清除的数据库800多G,磁盘空间就剩10多G,数据量最多的表有2亿.目的就是清楚去年的数据(2017年之前),遇到了一些问题,总结起来就是三方 ...
- JVM的常用的调优策略和垃圾回收算法及Tomcat的常用调优参数
jvm调优主要针对堆内存,堆内存分为:新生区.养老区和永久区 永久区存放的是系统jdk自身的interface和class的元数据,所以唯有新生区和养老区具有优化空间. 新生区:伊甸区和幸存者区.所有 ...