python集合与字典的用法
python集合与字典的用法
集合:
1.增加 add
2.删除 •del 删除集合
•discard(常用)删除集合中的元素 #删除一个不存在的元素不会报错
•remove 删除一个不存在的元素会报错
•pop随机删除一个值并弹出删除的值
3.clear 清除 #清空集合中的元素,集合还存在
4.in 判断一个元素是否在集合中
5.去重 例:把列表去重 a=[1,2,3,4,1,2] a=list(set(a))
6.set() 设定空集合
7.集合是无序的
8.集合不能装列表、字典等可以修改的数据类型,可以装数字、字符、元组
•可以修改的数据类型:列表、字典、集合
•不可以修改的数据类型:数字、字符串、元组
9.集合运算:& | ^ - issubset issuperset
10.复制 copy
字典:
1.定义字典:
•空字典{}
•非空字典
•zip定义字典(把列表合成字典) 例:list1=["x1","x2","x3"] list2=[77,66,55] d=dict(zip(list1,list2))
2.增加 例:a={} a["s1"]=89
3.修改
•a["s1"]=100
•update 更新 例:a={"m":999} c={"n":666} a.update(c) #如果c在a中存在,则更新,不存在则直接添加
4.删除:del a["s1"] pop popitem clear #pop必须带参数,返回key对应的值 popitem不用写参数
5.查询
•a["s1"]
•get 不报错,有则取出,没有则返回默认值,默认为空
1.集合
#集合的定义
print("集合的定义:")
a=set()
print(a,"空集合")
b={1,2,4}
print(b)
#增加
print("集合的元素增加的用法:")
a.add(1)
a.add(3)
a.add(4)
a.add("")
print(a)
b.add("")
b.add(7)
print(b)
#集合的删除
print("集合删除的用法:")
print("原始集合为",a)
a.discard(3)
print(a,"discard的用法删除元素3,删除一个不存在的元素不会报错")
a.remove(4)
print(a,"remove的用法删除元素4,删除一个不存在的元素会报错")
a.pop()
print(a,"pop的用法,随机删除一个数,并弹出删除的值")
b.clear()
print(b,"clear的用法,清除集合中所有的元素")
del a
#in
a={1,2,3,4}
print("判断元素在不在集合中:")
if 1 in a:
print("1在集合a中")
else:
print("1不在集合a中")
#集合运算 & | ^ - issubset issuperset
print("集合的运算:")
a={1,2,3,4,6,7}
b={3,6,7}
print("原始集合a为%s,原始集合b为%s"%(a,b))
print(a&b,"&的用法(并)") #并
print(a|b,"|的用法(或)") #或
print(a^b,"^的用法(异或)") #异或
print(a-b,"-的用法") #a 减去 a和b的交集
print(a.issubset(b),"issubset的用法") #a是b的子集
print(b.issubset(a))
print(a.issuperset(b),"issuperset的用法") #a是b的父集
2.字典
#定义字典
print("定义字典:")
a={}
print(a,"空字典的用法")
b={1:"a",2:"b",3:"c",4:"d"}
print(b,"非空字典的用法")
list1=["s1","s2","s3"]
list2=[88,77,99]
print(dict(zip(list1,list2)),"zip定义字典的用法,把两个列表压缩转换成字典")
#字典的增加修改
print("字典的增加修改用法:")
print("原始字典a为%s"%a)
a["m"]=100
print(a,"增加的用法,通过键值对赋值增加")
a["m"]=999
print(a,"修改的用法,通过对已经存在的键值对赋值进行修改")
c={"n":666}
a.update(c)
print(a,"update的用法")
#删除
print("删除的用法:")
print("原始的字典为%s"%b) print(b.pop(3),"pop的用法") #pop必须写参数
print(b.popitem(),"popitem的用法") #popitem不用写参数
b.clear()
print(b,"clear的用法")
b={1:"a",2:"b",3:"c",4:"d"}
del b[4]
print(b,"del的用法")
#查询
print("查询的用法:")
b={1:"a",2:"b",3:"c",4:"d"}
print("原始的字典为%s"%b)
#update的用法
dict1 = {'Name': 'yaoyao', 'Age': 20}
dict2 = {'Sex': 'female'}
#将dict2更新到dict1中
dict1.update(dict2)
print(dict1)
print(dict2)
print(b[1],"查询,通过键值对查询")
print(b.get(1,"不存在"),"查询,通过get查询,没有则返回默认值")
print(b.get(7,"不存在"))
print(b.items(),"items的用法")
print(b.keys(),"keys的用法")
print(b.values(),"values的用法")
python集合与字典的用法的更多相关文章
- Python——集合与字典练习
集合与字典练习question1问题描述:有一个列表,其中包括 10 个元素,例如这个列表是[1,2,3,4,5,6,7,8,9,0],要求将列表中的每个元素一次向前移动一个位置,第一个元素到列表的最 ...
- Python 集合、字典、运算符
先区分一下序列类型和散列类型: 序列类型:list.string.tuple,他们中的元素是有序的. 散列类型:set.dict,他们中的元素无序的. 序列类型有序,可以用索引.而散列类型中的元素是无 ...
- python 集合(set)和字典(dictionary)的用法解析
Table of Contents generated with DocToc ditctaionary and set hash 介绍 集合-set 创建 操作和访问集合的元素 子集.超集.相对判断 ...
- Python中的字典与集合
今天我们来讲一讲python中的字典与集合 Dictionary:字典 Set:集合 字典的语法: Dictionary字典(键值对) 语法: dictionary = {key:value,key: ...
- Python列表、集合与字典(3)
目录 一.列表 二.集合 三.字典 一.列表 1. 列表初识 列表的使用为处理特定顺序排列的数据提供了便利,列表元素可以是字母.数字或者其他信息,同时所加元素之间不存在任何关系. 在Pytho ...
- python初识数据类型(字典、集合、元组、布尔)与运算符
目录 python数据类型(dict.tuple.set.bool) 字典 集合 元组 布尔值 用户交互与输出 获取用户输入 输出信息 格式化输出 基本运算符 算术运算符 比较运算符 逻辑运算符 赋值 ...
- python基础之字典dict和集合set
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7043642.html python基础之字典dict和集合set 字典dic ...
- Python dictionary 字典 常用法
Python dictionary 字典 常用法 d = {} d.has_key(key_in) # if has the key of key_in d.keys() ...
- Python数据类型(字典和集合)
1.5 Dictionary(字典) 在Python中,字典用放在花括号{}中一系列键-值对表示.键和值之间用冒号分隔,键-值对之间用逗号分隔. 在字典中,你想存储多少个键-值对都可以.每个键都与一个 ...
随机推荐
- 读写锁ReentrantReadWriteLock:读读共享,读写互斥,写写互斥
介绍 DK1.5之后,提供了读写锁ReentrantReadWriteLock,读写锁维护了一对锁:一个读锁,一个写锁.通过分离读锁和写锁,使得并发性相比一般的排他锁有了很大提升.在读多写少的情况下, ...
- python 闯关之路四(上)(并发编程与数据库理论)
并发编程重点: 并发编程:线程.进程.队列.IO多路模型 操作系统工作原理介绍.线程.进程演化史.特点.区别.互斥锁.信号. 事件.join.GIL.进程间通信.管道.队列. 生产者消息者模型.异步模 ...
- MySQL行转列
IF(expr1,expr2,expr3) 如果 expr1 是TRUE (expr1 <> 0 and expr1 <> NULL),则 IF()的返回值为expr2; 否则 ...
- Mysql索引的类型
索引的类型 B-Tree索引 B-Tree 索引 通常意味着所有的值都是按顺序存储的,并且每一个叶子页到根的距离相同. B-Tree 索引 能够加快访问数据的速度,存储引擎不再需要进行全表扫描来获取需 ...
- Netty 系列七(那些开箱即用的 ChannelHandler).
一.前言 Netty 为许多通用协议提供了编解码器和处理器,几乎可以开箱即用, 这减少了你在那些相当繁琐的事务上本来会花费的时间与精力.另外,这篇文章中,就不涉及 Netty 对 WebSocket协 ...
- js 随机点名
1.对象构造函数 设置节点与人名 constructor({ printElement, startElement, stopElement , person }) { this.list = per ...
- js 对象转数组
function objToArray(array) { var arr = [] for (var i in array) { arr.push(array[i]); } console.log(a ...
- es6 语法 (iterator和for...of循环)
Iterator遍历器 遍历器(Iterator)就是这样一种机制.它是一种接口,为各种不同的数据结构提供统一的访问机制.任何数据结构只要部署Iterator接口,就可以完成遍历操作(即依次处理该数据 ...
- apache配置-html碎片shtml格式
修改SSI 文件 conf–httpd.conf <Directory "D:/Android/Apache2.2/htdocs"> //修改文件目录 # # Pos ...
- readLine()的注意点
我在用socket做即时通讯的时候,读取服务器返回的信息用了BufferedReader,用起来挺方便的. BufferedReader br = new BufferedReader(new Inp ...