python组合数据类型及各种操作小总结

摘要:

python中,一共有四种组合数据类型,他们分别是列表(list),元组(tuple),集合(set),字典(dict)。而这些数据类型分别都有什么作用?他们有哪些共同点,又有哪些不同呢?接下来我们就一起看一下。

1.列表(list)

列表可以包容多种类型数据,不管是字符串(str)还是数字(int,float)还是布尔(bool),都可以放进列表中,成为我们可以随时更改查阅以及调用的数据组合。

在python中,声明一个列表,仅需要

list = []
#声明一个空列表
a = list(1,2,3,4,5)
#也是声明一个列表

同时我们也会对列表进行一些增删查改操作

#首先声明一个列表
a = list(1,2,3,4)
#增加操作
list.append()#在末尾增加一个数据
list.insert()#在任意位置插入一个数据,其后数据向后移一位
list.extend()#添加一组数据,例如添加一个列表到另外一个列表
#删除操作
list.pop(0)#弹出某一位置一个数据
list.remove()#删除列表内的一个数据,需要知道数据名称
del list[2]#删除某一位置的数据
#查询操作
list.count()#可以查询列表中某一数据出现的次数
list.index()#可以返回列表的索引值
#修改操作
list.sort()#可以对列表中数据进行排序,前提是数据类型必须相同,数字数据默认为自然数顺序排序
list.reverse()#可以使列表中的数据翻转
#其它操作,外部函数
len(list)#返回列表数据个数
max(list)#求列表最大值
min(list)#最小值
sorted(list)#外部函数对列表排序

2.元组(tuple)

元组也可以存放多种类型的数据,但是,他一但被声明出来以后就无法更改元组里面的内容了,所以可以理解元组是特殊的列表。

首先我们要声明一个元组

#声明一个空元组
t1 = tuple()
t1 = ()

然后就可以对元组进行一些操作,由于元组内数据一但声明就无法更改,所以增加,修改操作就没办法使用了,而删除操作就只能删除元组本身了。

tuple.count()
#查询某一元素在元组中出现的次数
tuple.index
#返回元素的索引值

3.集合(set)

通过哈希(hash)算法在一个容器中存放多个没有顺序的不可以重复的数据,集合与数学上的集合差不多,要点是没有顺序的不可重复的数据。

首先还是,先声明一个集合

#声明一个集合
s1 = set()    <class ‘set’>

s2 = {“a”}    <class ‘set’>
#切记不可以
s3 = {}       <class “dict”>

之后就是对集合的一些数据操作

set.add()#集合中添加数据
set.pop()#随机删除集合中的一个数据
set.remove()#删除集合中一个具体的数据
set.discard()#删除集合中的一个具体的数据
set.clear()#清空集合

4.字典(dict)

字典是可以存储多个key:value 键值对数据的组合数据类型。也叫映射。

首先声明一个字典

#声明一个空字典
dict = {}
d1  = dict() 

对字典的基本数据操作

dict.get()#根据key值获取对应的值
dict.pop()#根据key值删除一个键值对
dict.items()#获取所有的键值对
dict.popitem()#随机删除一个键值对
dict.fromkeys()#通过制定的key生成一个值为None的字典
dict.setdefault()#增加一个数据,如果数据存在~修改
dict.values()#获取所有的值

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏软件开发 -- 分享 互助 成长

C++ STL之set的基本操作

set是集合,虽然也存在键值和实值,不过两者根本就是同一个值,键值的设置完全就是为了满足红黑树的底层结构,set操作与map很像不过也有些不同。 1、 set迭...

39350
来自专栏Crossin的编程教室

【Python 第70课】lambda 表达式

Python 是一门简洁的语言,lambda 表达式则充分体现了 Python 这一特点。 lambda 表达可以被看做是一种匿名函数。它可以让你快速定义一个...

31860
来自专栏深度学习与计算机视觉

C++ 类的继承与派生

继承性是面向对象程序设计最重要的特性之一,使软件有了可重用性,C++提供的类的继承机制。 继承与派生的概念 一个新类从已有的类那里获得已有的特性,这种现象称为类...

21880
来自专栏smy

php unset对json_encode的影响

发现对一个数组unset前后,变量的类型变化了,unset前是数组,unset后是对象

10510
来自专栏desperate633

LintCode 最小差题目代码

给定两个整数数组(第一个是数组 A,第二个是数组 B),在数组 A 中取 A[i],数组 B 中取 B[j],A[i] 和 B[j]两者的差越小越好(|A[i]...

11920
来自专栏北京马哥教育

Python 运算符,你了解多少?

? 文 | 云豆 图 | 来源网络 ? 云豆贴心提醒,本文阅读时间6分钟,文末有秘密! 什么是运算符? 本章节主要说明Python的运算符。举个简单的...

43780
来自专栏杂七杂八

python中sort与sorted

sort与sorted是python中的排序函数。它们的最大区别在于sort是定义在list中的,对list起作用。而sorted则可以排序所有的可迭代对象 ...

28780
来自专栏desperate633

LintCode 删除数组中的重复元素题目分析代码

给定一个排序数组,在原数组中删除重复出现的数字,使得每个元素只出现一次,并且返回新的数组的长度。

6410
来自专栏WD学习记录

python 浅拷贝 深拷贝

2、b = a.copy(): 浅拷贝, a 和 b 是一个独立的对象,但他们的子对象还是指向统一对象(是引用)。

13920
来自专栏技术沉淀

Python: 正则表达式实例透析

经常用match = re.search(pat, str)的形式。因为有可能匹配不到,所以re.search()后面一般用if statement。

13430

扫码关注云+社区

领取腾讯云代金券