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集合与字典的用法的更多相关文章

  1. Python——集合与字典练习

    集合与字典练习question1问题描述:有一个列表,其中包括 10 个元素,例如这个列表是[1,2,3,4,5,6,7,8,9,0],要求将列表中的每个元素一次向前移动一个位置,第一个元素到列表的最 ...

  2. Python 集合、字典、运算符

    先区分一下序列类型和散列类型: 序列类型:list.string.tuple,他们中的元素是有序的. 散列类型:set.dict,他们中的元素无序的. 序列类型有序,可以用索引.而散列类型中的元素是无 ...

  3. python 集合(set)和字典(dictionary)的用法解析

    Table of Contents generated with DocToc ditctaionary and set hash 介绍 集合-set 创建 操作和访问集合的元素 子集.超集.相对判断 ...

  4. Python中的字典与集合

    今天我们来讲一讲python中的字典与集合 Dictionary:字典 Set:集合 字典的语法: Dictionary字典(键值对) 语法: dictionary = {key:value,key: ...

  5. Python列表、集合与字典(3)

    目录 一.列表 二.集合 三.字典 一.列表 1. 列表初识   列表的使用为处理特定顺序排列的数据提供了便利,列表元素可以是字母.数字或者其他信息,同时所加元素之间不存在任何关系.   在Pytho ...

  6. python初识数据类型(字典、集合、元组、布尔)与运算符

    目录 python数据类型(dict.tuple.set.bool) 字典 集合 元组 布尔值 用户交互与输出 获取用户输入 输出信息 格式化输出 基本运算符 算术运算符 比较运算符 逻辑运算符 赋值 ...

  7. python基础之字典dict和集合set

    作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7043642.html python基础之字典dict和集合set 字典dic ...

  8. Python dictionary 字典 常用法

    Python dictionary 字典 常用法 d = {} d.has_key(key_in)       # if has the key of key_in d.keys()          ...

  9. Python数据类型(字典和集合)

    1.5 Dictionary(字典) 在Python中,字典用放在花括号{}中一系列键-值对表示.键和值之间用冒号分隔,键-值对之间用逗号分隔. 在字典中,你想存储多少个键-值对都可以.每个键都与一个 ...

随机推荐

  1. maven 编译出现初始化异常:com/sun/tools/javac/code/TypeTags

    使用的式jdk11 lombok式1.16.4 错误原因:版本不匹配 升级lombok到1.18.4 问题解决

  2. MySQL中间件之ProxySQL(12):禁止多路路由

    返回ProxySQL系列文章:http://www.cnblogs.com/f-ck-need-u/p/7586194.html 1.multiplexing multiplexing,作用是将语句分 ...

  3. C#字符串。

    string类型不能被继承,它是密封类,sealed. 一.字符串的特性. 1.不可变性. class Program { static void Main(string[] args) { stri ...

  4. c#金额转换成中文大写金额

    2018-08-24 转别人 c#金额转换成中文大写金额 /// <summary> /// 金额转换成中文大写金额 /// </summary> /// <param ...

  5. Netty实战九之单元测试

    ChannelHandler是Netty应用程序的关键元素,所以彻底地测试他们应该是你的开发过程的一个标准部分.最佳实践要求你的测试不仅要能够证明你的实现是正确的,而且还要能够很容易地隔离那些因修改代 ...

  6. Java 原生网络编程.

    一.概念 Java 语言从其诞生开始,就和网络紧密联系在一起.在 1995 年的 Sun World 大会上,当时占浏览器市场份额绝对领先的网景公司宣布在浏览器中支持Java,从而引起一系列的公司产品 ...

  7. 详解bootstrap-fileinput文件上传控件的亲身实践

    经理让我帮服务器开发人员开发一个上传文件功能界面,我就想着以前使用过bootstrap-fileinput插件进行文件上传,很不错.赶紧就撸起来了. 1.下载压缩包.插件地址https://githu ...

  8. js 判断数组中是否有重复值

    function arrHasvalue(arr) { var nary = arr.sort(); for (var i = 0; i < arr.length; i++) { if (nar ...

  9. 利用SurfaceView显示正弦曲线,仿造示波器

    众所周知,view是通过刷新来重绘视图的,Android系统通过发出VSYNC信号来进行屏幕重绘,刷新的时间间隔为16ms,如果在16ms内view完成你所需要的所有操作,那么用户在视觉上就不会产生卡 ...

  10. Android为TV端助力 转载弩的博客

    Android.mk简介:Android.mk文件用来告知NDK Build 系统关于Source的信息. Android.mk将是GNU Makefile的一部分,且将被Build System解析 ...