第一题:1.列表和集合的相关知识
2.列表与集合之间的转换
面试题1:在python中如何定义集合,集合与列表有什么区别
面试题2:如何去掉列表(元组)中重复的元素
面试题1:
a = [1,2,3,4,5] # 列表
b = (1,2,3,4,5) # 元组
c = {1,2,3,4,5} #集合
区别: 1.集合没有重复的元素,而列表可以有重复的元素。 2.集合中的元素与顺序无关,而列表中的元素与顺序有关
面试题2:
a = [1,2,2,3,4,3] # 或者元组
a_result = list(set(a))
print(a_result)
第二题:1.集合的基础操作
2.集合之间的运算
面试题1:如何向集合中添加和删除元素,需要注意什么
面试题2:如何求集合的并,交,集合之间是否还支持其他操作
面试题1:
x = {3,2,1}
x.add(123) #如果添加重复的会忽略,不会添加
if x.__contains__(444): #判断集合x中是否含有元素444
x.remove(123) #如果删除元素不存在就会抛出异常
else:
print('444在集合中不存在')
面试题2:
x1 = {1,2,3}
x2 = {3,4,5}
print(x1 | x2) #集合之间的合并 或者:print(x1.union(x2))
print(x1 & x2) #相交 或者print(x1.intersection(x2))
print(x1.difference(x2)) # 输出为:{1,2}
#将x1有的,x2中也有的删除,返回的是x1的子集
print(x1 ^ x2) # 输出为:{1,2,4,5}
#刨除x1和x2共有的元素,返回的是集合并的子集