小黑日记008:容器类型——第四节 元组、字典

容器类型

一、 通用操作
二、 字符串 str
三、 列表 list
四、 元组 tuper
五、 字典 dict
六、 集合 set
七、 固定集合 frozenset



一、元组 tuple

1、定义:由一系列变量组成的 不可变序列 容器。

2、基本操作:

1)创建空元祖:t01= () t02 = tuple()

2)创建具有默认值的元组:

t03 = (1,) #只有一个元素必须加“,”,否则被当作普通对象(1会被当成整数),而不是元组对象。
to4 = (1,2,Ture,[3,4]) #元组内可放任意类型数据。

3)元组不可进行增、删、改。

4)获取元素(索引/切片)

t05[2]
t06[:3]

5)元组的遍历

# 获取所有元素
for item in t07:
	print(item)
# 倒序获取所有元素
for i in range(len(t08)-1,-1,-1):
	print(t08[i])

3、作用:

1)元组和列表都可以储存一系列变量,由于列表会预留内存空间,所以可以增加元素
2)元组按需分配内存,所以如果变量数量数量固定,建议使用元组,通常占用空间更小
应用:
变量交换的本质就是创建元祖:x,y = y,x
格式化字符串的本质就是创建元祖:“姓名%s,年龄%d”%(“tarena”,18)

二、字典 dict

1)定义:由一系列 键值对 组成的 可变 映射容器。

特点:1、key必须是不可变类型,而且是唯一的,value可以是任意型。
	 2、字典是无序的。

2)基础操作:

(1)创建空字典:d01 = {} ,d02 = dict()

(2)创建具有默认值的字典:

d03 = {"a":"A","b":"B"}
print(d03) #output:{'a': 'A', 'b': 'B'}
d04 = dict([(1,2),(3,4)])
print(d04) #output:{1: 2, 3: 4}

(3)添加/修改:

语法:d05[键key] = 值value
说明:1、如果d05中键key不存在,则创建键key,并绑定对应的值value。
	  2、如果d05中键key存在,则修改键绑定的值value。

(4)获取元素:

print(d06["c"]) #键"c"不存在,则报错。
建议:在字典中读取元素,先判断是否存在,在进行读取。
if "c" in d06:
	print(d06["c"])

(5)删除元素:

del d07["c"] 
	print(d07) #键"c"不存在,则报错。(同样,可在删除前先判断是否存在。)

(6)字典的遍历:

# 获取字典所有元素
for key in d08:
	print(key) #key
	print(d08[key]) #value
	
# 获取字典所有记录(元组)
d09 = dict([(1, 2), (3, 4), (5, 6)])
# 方法一:
for item in d09.items():
	print(item) #output:(1, 2)\n(3, 4)\n(5, 6) #所有键值对以元组形式打印
	print(item[0]) #output:1\n3\n5 #打印所有键
	print(item[1]) #output:2\n4\n6 #打印所有值
# 方法二:
for k,v in d09,items():
	print(k) #key
	print(v) #value

# 获取所有键
d10 = dict([(1, 2), (3, 4), (5, 6)])
for k in d10.keys():
    print(k)
# 获取所有值
for v in d10.values():
    print(v)

3)字典推导式:

1)定义:适用简易的方法,将可迭代对象转换为字典。

2)语法:

{键:值 for 变量 in 可迭代对象}
{键:值 for 变量 in 可迭代对象 if 条件语句}

4)字典vs列表:

(1)都是可变容器;

(2)获取方式不同,列表用索引,字典用键。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值