Python笔记五、组合数据类型

一、序列类型:字符串str、元组tuple、列表list

序列类型属于一维元素向量,元素之间存在先后关系,通过序号访问。支持成员关系操作符(in)、长度计算函数(len())、分片([  ]),元素本身也可以是序列类型

1.字符串str

用单,双引号定义,区间[ ]方式为左闭右开

2.元组tuple

用()定义,元素之间用逗号分割。元组一旦创建就不能被修改

3.列表list

用[ ]定义,与元组不同,列表的长度与内容都是可变的,列表没有长度限制,元素类型可以不同,可以通过list()将元组或字符串转化为列表,直接使用list()会返回一个空列表

列表必须通过显式的数组赋值才能生成,即使用[ ]进行创建并赋值,简单将一个列表赋值给另一个列表只是引用,不会生成一个新的列表对象

ls1= [1,43]
ls2 =ls1      #ls2是ls1的引用
ls1[0] = 22   #ls1修改后,ls2同时修改
ls2.append(66)#ls2修改后,ls1同时修改 
print(ls1,ls2)

ddb587d533ea498dbbc3a64a163cfb0e.png

 当使用一个列表改变另一个列表值时,不要求两个列表长度一致,但遵循“多增少减”原则

 

vlist = [0,'bit','computer','python','4']
vlist[1:3] = ['new_bit','new',123]  #左边2个元素,右边3个元素,则原列表中增加第三个元素
print(vlist) 
vlist[1:3] = ['fewer']   #左边两个元素,右边一个元素,则在vlist列表中删除第二个元素
print(vlist)

56979f803cc4410dba48d7b2af0109f4.png

ls.append(x)在列表ls最后增加一个元素x

ls.insert(i,x)在列表的第i个位置增加元素x

ls.pop(i)将列表中的第i个元素取出作为函数的返回值,并在ls列表中删除该元素

ls.remove(x)将列表中出现的第一个元素x删除

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

ls +=lt,ls*=n

二、集合类型

用set()定义并生成,用{}表示,如果直接用{}生成为字典。集合的元素不可重复,元素类型只能是固定数据类型,例如整数、浮点、字符串、元组等,列表、字典、和集合类型本身都是可变数据类型,不能作为集合的元素

s1 = {}
s2 = {'2'}
print(type(s1),type(s2))

812c1b6280894a8e85596f3505678bfa.png

 使用set()函数可以将元组、列表等序列类型转换为集合,过滤重复元素。数字1与字符串1非同一元素

ls = ['1','2','1',1,2]
print(set(ls))

4e74786c8b264531b6ad756b562bb871.png

 三、映射类型

映射类型的每个元素是键值对,元素之间是无序的,字典是映射类型的主要体现

字典可以通过{ }生成并建立,键和值通过冒号连接,元素之间用逗号分割,键值对之间没有顺序且不能重复。键必须唯一,值可以相同

Python语言中,字符串、列表、元组等都采用数字索引,字典采用字符索引

常用函数与方法:

<d>.keys()、<d>.values()、<d>.items()

<d>.get(key,default)、<d>.pop(key,default)、<d>.popitem()等

判断题:下面正确创建字典的方式为(ACDE),列表不能做为键,其余都行

A、d = {1:[1,2],3:[3,4]}
B、d = {[1,2]:1,[3,4]:3}
C、d = {(1,2):1,(3,4):3}
D、d = {1:"1,2",3:"3,4"}
E、d = {"1,2":1,"3,4":3}

注意:Python中,4/2结果默认为浮点2.0,若计算式出现在索引中必须用//,int()取整,如new[size//2]

0ad757226d5e4f4db4ecc412db043928.png

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值