首页 > 试题广场 > 下面哪个是Python中的不变的数据结构? 
[单选题]
下面哪个是Python中的不变的数据结构? 
  • set
  • list
  • tuple
  • dict
string int float tuple boolen 不可变 
list dict 和set为可变
帮助记忆的方法:不可变的看作是个体, 可变是一个容器
发表于 2019-07-18 17:48:38 回复(0)
在 python中,数据类型分为可变和不可变数据类型。string int float tuple  boolen 不可变    list dict 和set为可变数据类型 答案为C
发表于 2019-07-04 00:49:16 回复(0)
python中的list、tuple、dict、set
1、list
(1)构造list,使用[ ]把list的所有元素都括起来就是一个列表,用变量L表示。其中的元素不要求是同一种数据类型。
(2)列表中元素是有序的。可以通过索引来访问。
(3)访问list的元素,L[0]:表示列表中的第一个元素,L[-1]:表示列表中的最后一个元素。
         L[起始索引:终止索引]:表示访问列表中的多个元素,包含头,不包含尾。
(4)列表是可以被修改的,包括添加元素,删除元素,替换元素。
1)添加元素:L.append(元素)、L.insert(元素插入到列表中的位置,元素)
2)删除元素:L.pop()<==>L.pop(-1),L.pop(要删除元素在列表中的位置)、L.remove(要删除元素),删除列表中第一次匹配到的元素
3)替换元素:L[要替换元素在列表中的位置]=新的元素值
(5)计算列表的长度:len(L)
(6)计算列表中某一个元素在列表中出现的次数:L.count(要统计的元素)
(7)列表拼接,用+,L1=[1,2],L2=[3,4],L1+L2=[1,2,3,4]
(8)列表中元素复制,用*,L= [2,3],L*3 = [2,3,2,3,2,3]
2、tuple
(1)构造tuple,使用()把tuple的所有元素都括起来就是一个元组,用变量T表示。python规定只有单个元素的元组应表示成(元素,),避
免歧义。其中的元素不要求是同一种数据类型
(2)元组中元素是有序的。可以通过索引访问。
(3)访问tuple的元素,T[0]:表示元组中的第一个元素,T[-1]:表示元组中的最后一个元素。
(4)元组是不可以被修改的,因此它没有append()、insert()、pop()等方法。
注意:元组中可以包含列表,如T= (1,2,[4,5]),
T[2] = [ ],错误
T[2][0] =5,正确
3、dict
(1)构造dict,使用{ }把dict所有元素都括起来就是一个字典,用D表示。D中元素的形式是key:value的形式。其中的key或者value都不要求是
同一种数据类型
(2)字典中元素是无序的。不可以通过索引访问。
(3)访问dict的元素,使用D[key]来查找对应的value。如果key不存在,则会报错。为避免报错:
1)访问前先判断
if key in D:
print(D[key])
2)使用get()方法
print(D.get[key]),key不存在会输出None
(4)字典是可以被修改的。D[key] = 新的value,如果key不存在,则会想字典中添加这一键值对。
注意:
字典的一个最明显的特点是查找速度快,无论字典中有多少个数据,查找的速度都是一样的,因为它是按照key来查找的。但是它占用的内存大。典型的以空间换时间的思想。
4、set
(1)构建set,S = set(传入一个列表),或者S = {元素1,元素2,....}。其中的元素不要求是同一种数据类型如:
S= set([1,2,3,3,4,5])
print(S) #{1,2,3,4,5}
注意:创建空集合只能使用S = set(),而不能使用S = { },这是用来创建空字典的。
(2)集合中元素是无序的。不可以通过索引来访问元素。
(3)集合是可以被修改的。
(4)添加元素和删除元素。
1)S.add(元素)
2)S.remove(元素)。删除之前要进行判断:if 元素 in S: S.remove(元素),否则会报错。

编辑于 2019-07-27 14:40:29 回复(0)