day6 元组、字典、集合

一、元组

定义: 元组是不可变列表,用小括号将元素包含起来,多个元素之间用逗号隔开,元素的类型可以是任何类型
由于元组是不可变列表,增删改相关操作不能作用于元组;查可以

1.查和列表的查一模一样,没有任何区别
元组.[下标]

colors = ('red','green','yellow','purple')
print(colors[1])  #获取下标为1的元素
print(colors[0:3])  #获取下标0~2的元素
print(colors[::-2])  #从最后一个开始获取,下标-2获取下一个

2.获取元组的长度
len(元组)

colors = ('red','green','yellow','purple')
print(len(colos))  #  4 

3.判断指定元素是否在指定的元组中
in , not in

colors = ('red','green','yellow','purple')
print('red' in colors)   #True

4.+、* 

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

获取元组的元素



colors = ('red','green','yellow','purple')
for x in colors:
  print(x)
names = (1, 2, 3)
x, y, z = names  # 通过多个变量获取元组的元素(变量个数和元组元素个数一样)
f, *g, h = names  # 通过变量名前加 * 可以把变量变成列表,获取多个元素
*a, b = names  # 获取最后一个元素,剩下的部分作为列表a的元素

二、字典

定义:

字典是iyizhong容器类型的数据类型,存的数据是以键值对的形式出现的,字典中的元素全部是键值对

特点:

字典是可变的,但是是无序的
键是唯一的,后面的会覆盖前面的

1.声明字典

dict1 = {} #创建一个空的字典

dict2 = {'a': 1, 'b': 'abc'}

2.字典的增删改查

a.查: 字典名[key]

获取字典元素的值
字典获取元素的值通过key来获取

preson = {'name': '路飞', 'age': 17, 'face': 90}
preson['name']

字典.get(key)
如果key卜存在,返回None

b.增加/修改元素

del 字典[key] -- 注意:key不存在会报错
字典.pop(key) --- 会返回被删除的键值对对应的值

3.相关的数组属性

字典.keys(): 获取字典所有的key,返回值的类型是dict_keys类型,可以当成列表来使用
字典.values(): 获取字典所有的value
字典.items(): 将字典中所有的键值对转换成一个一个的元祖,key作为元组的第一个元素,
value作为元组的第二个元素

遍历每一个key

student_dict = {'name': '张三', 'study_id': 'py1805', 'score': {'english': 60, 'math': 100}}
keys = student_dict.keys()
for key in keys:
  print(key)

4.遍历字典

直接遍历字典获取到的是所有的key
for x in 字典名:

5..列表中有字典、字典中有字典、字典中有列表

student = []
message = {}
message2 = {}
message3 = {}
message['name'] = '张三'
message['sex'] = '男'
message['age'] = 18
message2['name'] = '李四'
message2['sex'] = '男'
message2['age'] = 20
message3['name'] = '王五'
message3['sex'] = '女'
message3['age'] = 15
student.append(message)
student.append(message2)
student.append(message3)
print(student)

字典1.update(字典2): 使用字典2去更新字典1中的键值对;如果只带了2 中对应的键值对在字典一种不存在就添加,存在就更新

三、集合

定义:

集合是一种容器数据类型,数据放在{}中,多个之间用逗号隔开

特点:

无序的,可变,元素不能重复

1.声明一个集合

声明一个变量,赋一个集合值

set1 = set()  #创建一个空的集合
set2 = {1, 2, 3, 4}

####2.增删改查
查:(集合没有办法单独获取某一个元素)
遍历:
for x in set2:

增:
>集合.add(元素): 在指定的集合中添加指定的元素
集合1.update(集合2): 将集合2中的元素添加到集合1中,自动去重

删:
集合.remove(元素): 在指定的集合中删除指定的元素
集合.pop(): 随机删除一个

判断是否包含:
集合1 >= 集合2 -- 判断集合1是否包含集合2


数学的集合运算:
"""求并集: + """
print({1, 2, 3, 4} | {3, 4, 5, 6})

"""求交集: &"""
print({1, 2, 3, 4} & {3, 4, 5, 6})
"""求差集:-"""
print({1, 2, 3, 4} - {3, 4, 5, 6})
"""求补集"""
print({1, 2, 3, 4} ^ {3, 4, 5, 6})























©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,470评论 6 501
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,393评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,577评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,176评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,189评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,155评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,041评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,903评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,319评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,539评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,703评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,417评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,013评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,664评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,818评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,711评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,601评论 2 353

推荐阅读更多精彩内容