python集合以及数据类型的总结

Posted xj-excellent

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python集合以及数据类型的总结相关的知识,希望对你有一定的参考价值。

集合:是set类型
定义:通过{}来表示

集合添加和删除元素(了解即可):
  添加:add
  删除:remove

集合的特性:
  1.集合的元素是无序的 (打印出来的结果是无序的,毫无顺序可言),所以不存在下标取值和切片
  2.集合中只能存在不可变类型的数据
  3.集合中的元素不重复,(和高中数学里面的集合是一样的)

注意点:字典{}中是键值对的形式,集合和列表、元组一样,只有值

一、集合

集合:是set类型
定义:通过{}来表示

# 判断,这是空字典还是空集合?
set1 = {}
print(type(set1))      # 打印结果 <class ‘dict‘>  ,这是属于字典类型,说明是空字典

# 需求1,那空集合怎么来定义?
set2 = set()      # 定义一个空集合
print(type(set2))   # 打印结果 <class ‘set‘>

# 集合中添加元素 add
set3 = {11, 22, 33, 44}
set3.add(99)
print(set3)  # 元素99已添加进去 {33, 99, 11, 44, 22}  排序是无序的

# 集合中删除元素 remove
set4 = {55, 66, 77, 88}
set4.remove(66)
print(set4)  # 元素66已删除  {88, 77, 55}  排序是无序的

# 需求-->快速去除列表中重复的元素
# 思路:先将列表[]转换为{}set集合,再用列表[]转换回去
li = [11, 22, 33, 55, 44, 22, 33, 55, 88, 11, 44, 99, 44]
print(set(li))  # 打印结果为  {33, 99, 11, 44, 22, 55, 88}
print(list(set(li)))  # [33, 99, 11, 44, 22, 55, 88]

二、数据类型总结

基本的数据类型:
  数值:int,float,bool
  序列:列表,字符串,元组 (这些可进行切片)
  字典
  元组

可变的(可增删查改的):列表、字典、集合
不可变的: 数值、字符串、元组、

集合中只能存在不可变类型的数据

如果集合中包含了[]、{}等类型,会报错

set1 = {11, 22, hello, python}
print(set1)  # 打印结果  {‘python‘, 11, ‘hello‘, 22}

set2 = {11, 22, hello, python, [11, 22]}  # 加入了列表
print(set2)  # 报错了  TypeError: unhashable type: ‘list‘  说明集合中不能加入列表、字典等可变类型的数据

以上是关于python集合以及数据类型的总结的主要内容,如果未能解决你的问题,请参考以下文章

Python学习总结

集合以及深浅拷贝和和小数据池--个人一些经验总结

Python 基础之集合及基本数据类型总结

20200105--python学习数据类型总结

python深浅拷贝,集合以及数据类型的补充

Python中常见的数据类型总结