2018-07-23 python学习——元组与集合

1.元组

元组就是不可变的列表,列表中除了可变的操作以外,其他的操作都适用于元组

元组值: a.使用()将元素包含起来,多个元素之间用逗号隔开,比如:(1, 2, 'abc')
b.元素的类型可以是任何类型

2.改、增、删相关操作不能作用于元组。查可以

colors = ('red', 'green', 'yellow', 'purple')  #声明变量

1.查(和列表的查一模一样,没有任何区别)

print(colors[1])
print(colors[0:3])
print(colors[0::2])
for item in colors:
    print(item)

2.len

print(len(colors))

3.in , not in

print('red' in colors)

4.+和*

print((1, 2) + (3, 4))
print((1, 2) * 2)

5.元组补充(列表也可以):

"""1.获取元组的元素"""
names = ('name1', 'name2', 'name3')
x, y, z = names   # 通过多个变量分别获取元组的元素(变量个数和元组元素个数一样)
print(x, y)

names = ('name1', 'name2', 'name2_2', 'name2_3', 'name3')
first, *midel, last = names  # 通过变量名前加*可以把变量变成列表,获取多个元素
print(first, midel, last)

*name1, name = names
print(name1, name)

name, *name1 = names # 让name获取第一个元素,剩下的部分作为列表name1的元素
print(name)

2.集合

集合(set)也是一种容器类型的数据类型(序列);数据放在{}中,多个之间只用逗号隔开:{1, 2, 'a'}
集合是无序的(不能通过索引取取值), 可变(可以增删改), 元素不能重复

集合可以进行数学中集合相关的操作:判断是否包含,求交集、并集、差集、补集

1.怎么声明集合

"""a.声明一个变量,赋一个集合值"""
set0 = set()  # 创建一个空的集合
set1 = {1, 2, 3, 2, 2}

print(set1, type(set1))
"""b.将其他的数据转换成集合"""
set2 = set('abc1233h')  # 将其他数据转换成集合,自带一个去重的功能
print(set2)
set3 = set([12, 'abc', 'hh', 32, 12, 'abcn'])
print(set3)
print(list(set3))

2.增删改查

"""a.查:遍历
注意:集合没有办法单独获取某一个元素
"""
for item in set2:
    print(item)

"""b.增"""
# 集合.add(元素): 在指定的集合中添加指定的元素
set1 = {1, 2, 3}
set1.add(100)
print(set1)

# 集合1.update(集合2):将集合2中的元素添加到集合1中,自动去重
set1.update({'abc', 'ss'})
print(set1)


"""c.删"""
# 集合.remove(元素): 在指定的集合中删除指定的元素
set1.remove('ss')
print(set1)

# pop删除是随机删除一个
set1.pop()
print(set1)

3.判断是否包含

"""
集合1 >= 集合2  -- 判断集合1中是否包含集合2(判断集合2中的所有的元素是否都在集合1中)
集合1 <= 集合2  -- 判断集合2中是否包含集合1
"""
print({1, 2, 3, 4} >= {1, 4})  # True
print({1, 2, 3, 4} <= {1, 2})  # False

4.数学的集合运算

"""求并集: | """
print({1, 2, 3} | {2, 3, 4, 5})

"""求交集: &"""
print({1, 2, 3} & {2, 3, 4, 5})

"""求差集: -"""
print({1, 2, 3} - {2, 3, 4, 5})

"""求补集: ^"""
print({1, 2, 3} ^ {2, 3, 4, 5})

5.其他方法

"""clear:清空集合"""
set1.clear()
print(set1, type(set1))

"""len:获取集合中元素的个数"""
print(len(set1))
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 〇、前言 本文共108张图,流量党请慎重! 历时1个半月,我把自己学习Python基础知识的框架详细梳理了一遍。 ...
    Raxxie阅读 19,084评论 17 410
  • 补充列表 修改列表元素通过下标获取元素,然后重新赋值:列表名[下标] = 新的值 列表的其他操作(1).len(列...
    慢节拍_2709阅读 418评论 0 5
  • 下店考核发现,很多美容师,专业讲的很好,确没有成交! 原因是不够自信,自己都不相信,为了讲而讲!没有走心,美容师只...
    成晓阅读 423评论 1 5
  • 1.下载postman插件地址:http://download.csdn.net/detail/qq_312309...
    fengshunli阅读 386评论 0 0
  • 翻相册发现一张很不错的抓拍 当时只是想拍柜窗里的婚纱 纯白而美好 现在发现借着玻璃的反射,同时也拍到一个路过的女孩...
    解暑阅读 155评论 0 0