python的字典是什么组成的集合,python中集合的元素可以是字典吗

  python的字典是什么组成的集合,python中集合的元素可以是字典吗

  本章主要详细介绍python字典和集合。本文中的示例代码非常详细,具有一定的参考价值。感兴趣的朋友可以参考一下,希望能帮到你。

  00-1010字典修改字典删除字典元素字典关键字特征字典内置函数方法集合基本操作集合内置方法完整列表摘要

  

目录

  d={key1 :值1,key2 :值2,key3 :值3 }

  键必须是唯一的,但值不是。

  值可以采用任何数据类型,但键必须是不可变的,例如字符串和数字。

  

字典

  向字典添加新内容的方法是添加新的键/值对。

  tinydict={Name: Runoob , Age: 7, Class: First}

  Tindict [Age]=8 #更新年龄

  Tindict [学校]=菜鸟教程 #添加信息

  print (tinydict[Age]: ,tinydict[Age])

  print (tinydict[School]: ,tinydict[School])

  #tinydict[Age]: 8

  #tinydict[学校]:菜鸟教程

  

修改字典

  tinydict={Name: Runoob , Age: 7, Class: First}

  Del tinydict[Name] # delete键 Name

  Tinydict.clear() #清空字典

  Deltindict #删除字典

  

删除字典元素

  1)同一个键不允许出现两次。如果同一个键在创建过程中被赋值两次,后面的值将被记住;

  2)键必须是不可变的,所以可以用作数字、字符串或元组,但不能用作列表。

  

字典键的特性

  内置函数

  1 (dict):统计字典元素的个数,即键的总数。

  tinydict={Name: Runoob , Age: 7, Class: First}

  伦(tinydict)

  三

  2 str(dict):输出字典,可以打印成字符串表示。

  tinydict={Name: Runoob , Age: 7, Class: First}

  字符串(tinydict)

  {Name: Runoob , Class: First , Age: 7}

  3类型(可变)

  返回的变量类型,如果变量是字典,则返回字典类型。

  tinydict={Name: Runoob , Age: 7, Class: First}

  类型(tinydict)

  类别“字典”

  内置方法

  1ddict.clear():删除字典中的所有元素。

  2 dict.copy():返回一个字典的浅层副本。

  3 dict.fromkeys():创建一个新字典,使用序列seq中的元素作为字典的键,val作为字典所有键对应的初始值。

  4 dict.get(key,default=None):返回指定键的值,如果该键不在字典中,则返回默认设置的默认值。

  5 dict中的key:如果字典dict中的key返回true,否则返回。

  回false

  6 dict.items():以列表返回一个视图对象

  7 dict.keys():返回一个视图对象

  8 dict.setdefault(key, default=None):和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default

  9 dict.update(dict2):把字典dict2的键/值对更新到dict里

  10 dict.values():返回一个视图对象

  11 pop(key[,default]):删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。

  12 popitem():随机返回并删除字典中的最后一对键和值

  

  

集合

  集合

  可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

  

parame = {value01,value02,…}或者 set(value)

  

  

>>> basket = {apple, orange, apple, pear, orange, banana}

  >>> print(basket) # 这里演示的是去重功能

  {orange, banana, pear, apple}

  >>> orange in basket # 快速判断元素是否在集合内

  True

  >>> crabgrass in basket

  False

  >>> # 下面展示两个集合间的运算.

  >>> a = set(abracadabra)

  >>> b = set(alacazam)

  >>> a

  {a, r, b, c, d}

  >>> a - b # 集合a中包含而集合b中不包含的元素

  {r, d, b}

  >>> a b # 集合a或b中包含的所有元素

  {a, c, r, d, b, m, z, l}

  >>> a & b # 集合a和b中都包含了的元素

  {a, c}

  >>> a ^ b # 不同时包含于a和b的元素

  {r, d, b, m, z, l}

  

  

  

集合的基本操作

  

1、添加元素

  s.add(x)#若元素已存在,则不做任何操作

  >>> thisset = set(("Google", "Runoob", "Taobao"))

  >>> thisset.add("Facebook")

  >>> print(thisset)

  {Taobao, Facebook, Google, Runoob}

  s.update(x)#可以添加元素,且参数可以是列表,元组,字典等

  >>> thisset = set(("Google", "Runoob", "Taobao"))

  >>> thisset.update({1,3})

  >>> print(thisset)

  {1, 3, Google, Taobao, Runoob}

  >>> thisset.update([1,4],[5,6])

  >>> print(thisset)

  {1, 3, 4, 5, 6, Google, Taobao, Runoob}

  2、移除元素

  s.remove(x)

  >>> thisset = set(("Google", "Runoob", "Taobao"))

  >>> thisset.remove("Taobao")# 不存在会发生错误

  >>> print(thisset)

  {Google, Runoob}

  s.discard( x )

  >>> thisset = set(("Google", "Runoob", "Taobao"))

  >>> thisset.discard("Facebook") # 不存在不会发生错误

  >>> print(thisset)

  {Taobao, Google, Runoob}

  s.pop()

  #set 集合的 pop 方法会对集合进行无序的排列,然后将这个无序排列集合的左面第一个元素进行删除。

  3、计算集合元素个数

  len(s)

  4、清空集合

  s.clear()

  5、判断元素是否在集合中存在

  x in s

  判断元素 x 是否在集合 s 中,存在返回 True,不存在返回 False。

  >>> thisset = set(("Google", "Runoob", "Taobao"))

  >>> "Runoob" in thisset

  

  

  

集合内置方法完整列表

  1、add() 为集合添加元素

  2、clear() 移除集合中的所有元素

  3、copy() 拷贝一个集合

  4、difference() 返回多个集合的差集

  5、difference_update() 移除集合中的元素,该元素在指定的集合也存在。

  6、discard() 删除集合中指定的元素

  7、intersection() 返回集合的交集

  8、intersection_update() 返回集合的交集。

  9、isdisjoint() 判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。

  10、issubset() 判断指定集合是否为该方法参数集合的子集。

  11、issuperset() 判断该方法的参数集合是否为指定集合的子集

  12、pop() 随机移除元素

  13、remove() 移除指定元素

  14、symmetric_difference() 返回两个集合中不重复的元素集合。

  15、symmetric_difference_update() 移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。

  16、union() 返回两个集合的并集

  17、update() 给集合添加元素

  

  

总结

  本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注盛行IT软件开发工作室的更多内容!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: