Python入门之组合数据类型

分类: 集合   序列    字典

类型1——集合

       集合是一个无序不重复元素的序列。因为集合中不存在重复元素,所以集合中的元素是不可更改的,不能用可变的数据类型作为其中元素。如果元素可以更改,则可能在集合中出现重复元素。

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

使用set()创建集合 :  A=set("python")

使用{}创建集合:     A={"python", 123, ("python", 123)}

集合操作符

S | T    返回一个新集合 ,包括在S和T中的 所有元素
S-T     返回一个新集合 ,包括 在S但不在 T中的元素
S & T  返回一个新集合 ,包括 同时在S和T中的元素
S ^ T  返回一个新集合 ,包括S和T中的 非相同元素
S <= T 或 S < T      返回 True/False ,判断 S和T的子集关系

S >= T 或 S > T      返回 True/False, 判断 S和T的包含关系

S |= T       更新集合 S,包括在集合 S和T中的所有元素
S-=T         更新集合 S,包括在集合 S但不在 T中的元素
S &= T     更新集合 S,包括同时在集合 S和T中的元素
S ^= T      更新集合 S,包括集合 S和T中的非相同元素


集合处理方法

S.add (x)    如果 x不在集合 S中,将 x增加到 S
S.discard    移除 S中元素 x,如果 x不在集合 S中,不报错
S.remove(x)  移除 S中元素 x,如果 x不在集合 S中,产生 KeyError异常
S.clear ()    移除 S中所有元素

S.pop ()     随机返回 S的一个元素,更新 S,若 S为空产生 KeyError 异常

S.copy ()    返回集合 S的一个副本
len (S)       返回集合 S的元素个数
x in S         判断 S中元素 x,x在集合 S中,返回True ,否则返回 False
x not in S  判断 S中元素 x,x不在集合 S中,返回 False ,否则返回 True

set(x)      将其他类型变量 x转变为集合变量

例:

try :                    #将集合中的元素输出
    while True :
        print(A.pop (),  end= "" )
except:
    pass


用途:数据去重

A= ['a', 'a', 1, 2, 1]

B= set(A)

C= list(B)

print (C)


类型2——序列

序列是具有先后关系的一组元素,类似数组,可以通过序号操作序列内的元素。

序列是Python中最基本的数据结构,主要类型有字符串类型,列表类型,元组类型。

序列的序号正向由0开始递增,反向由-1开始递减。列表和元组中以元素为操作对象,字符串中以每个字符为操作对象。

通用操作符

x in s     如果 x是序列 s的元素,返回True ,否则返回 False
x not in s     如果 x是序列 s的元素,返回 False ,否则返回 True
s+ t      连接两个序列 s和t
s*n 或 n*s    将序列 s复制 n次
s[ i]      索引,返回 s中的第 i个元素, i是序列的号

s[ i: j] 或 s[ i: j: k]     切片,返回序列 s中第 i到j以k为步长的元素子序列

通用函数和方法

len (s)    返回序列 s的长度
min(s)    返回序列 s的最小元素, s中元素需要可比较
max(s)    返回序列 s的最大元素, s中元素需要可比较
s.index (x) 或s.index (x, i,j)       返回序列 s从i开始到 j位置中第一次出现元素 x的位置

s.count (x)     返回序列 s中出现 x的总次数

元组类型

元组的元素不可变,元组使用()或tuple()创建,元素间以逗号隔开,元组中只包含一个元素时,需要在元素后面添加逗号,如tup1=(50,),否则括号会被当作运算符使用。元组的元素不可操作,但是可以将两个元组用加号实现连接操作

创建空元组: tup1= ()

元组元素无法删除,但是可以通过 del  tup1 来删除整个元组

列表类型

列表类型使用[]或者list()创建,元素可为不同数据类型

对于列表的赋值操作,仅仅是传递了一个引用

操作函数及方法

ls[ i] = x     替换列表 ls 第i元素为 x
ls[ i: j: k] = lt     用列表 lt 替换 ls 切片后所对应元素子列表
del ls[ i]     删除列表 ls 中第 i元素
del ls[ i: j: k]      删除列表 ls 中第 i到第 j以k为步长的元素
ls += lt    更新列表 ls ,将列表 lt 元素增加到列表 ls 中

ls *= n     更新列表 ls ,其元素重复 n次

ls.append (x)    在列表 ls 最后增加一个元素 x
ls.clear ()     删除列表 ls 中所有元素
ls.copy ()     生成一个新列表,赋值 ls 中所有元素
ls.insert(i, x)    在列表 ls 的第 i位置增加元素 x
ls.pop (i)     将列表 ls 中第 i位置元素取出并删除
ls.remove(x)    将列表 ls 中出现的第一个元素 x删除

ls.reverse ()    将列表 ls 中的元素反转

类型3——字典

字典是键值对的集合,每个元素都是一个键值对。默认大括号{}用来创建空字典而不能创建空集合,字典也可用dict()来创建。键必须是唯一的,但值则不必。值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。

用d[key]的方式索引或添加字典里的元素

操作函数及方法

del d[k]     删除字典 d中键 k对应的数据值
k in d       判断键 k是否在字典 d中,如果在返回 True ,否则 返回False
d.keys ()    返回字典 d中所有的键信息
d.values ()    返回字典 d中所有的值信息

d.items ()     返回字典 d中所有的键值对信息

d.get (k, <default>)     键k存在,则返回相应值,不在则返回<default> 值
d.pop (k, <default>)     键k存在,则取出相应值, 不在则返回 <default> 值
d.popitem ()        随机从字典 d中取出一个键值对,以元组形式返回
d.clear ()       删除所有的键值对
len (d)         返回字典 d中元素的个数

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值