字典的基础知识

字典的定义:

info = {'name':'xiaohua','age':18,'addr':'石家庄'}

字典的增与字典改:

zidian[“键”] = 键值
这个键没有在字典中存在,就属于新增。这个键已经在字典中存在,就属于修改。

In [2]: info = {'name':'xiaohua','age':18,'addr':'石家庄'}

In [3]: info['sex'] = '女'  # 字典里没有'sex'键 所以添加到字典里

In [4]: info
Out[4]: {'name': 'xiaohua', 'age': 18, 'addr': '石家庄', 'sex': '女'}

In [5]: info['name'] = 'xiaocao'  #'name'已存在所以小花修改为小草

In [6]: info
Out[6]: {'name': 'xiaocao', 'age': 18, 'addr': '石家庄', 'sex': '女'}

字典的删:

del zidian[“键”]

In [6]: info
Out[6]: {'name': 'xiaocao', 'age': 18, 'addr': '石家庄', 'sex': '女'}

In [7]: del info['sex']

In [8]: info
Out[8]: {'name': 'xiaocao', 'age': 18, 'addr': '石家庄'}

字典的查:

zidian[“键”]
如果这个键不存在的话,会报错。
如果这个键存在的话,就会输出这个键值。
zidian.get(“键”)
如果这个键不存在的话,没有输出,也就是假。
如果这个键存在的话,就会输出这个键值

字典的相关扩展:

zi  = {"name": "xiaoshu", "age": 20, "addr": "上海"}
想要遍历这个字典,有很多的困难:
zi  = {"name": "xiaoshu", "age": 20, "addr": "上海"}
print(  len(zi)  )
i = 0
while  i < len(zi):
	print( zi[i]  )
	i += 1

解决的方法就是:

	字典的名字.keys() 
	
		得到的是字典中的所有键,是以对象的形式进行返回的(是可迭代的对象,也就是可以循环的对象)
	字典的名字.values() 
	
		得到的是字典中的所有键值,是以对象的形式进行返回的(是可迭代的对象,也就是可以循环的对象)
	字典的名字.items() 		 
		得到的是字典中的每一对键与键值,每一对键与键值是元组的形式呈现,最后,将这些元组组成了对象(是可迭代的对象,也就是可以循环的对象).
		示例:[('name', 'xiaoshu'), ('age', 20), ('addr', '上海')]
		
拆包:
	yuan = ("aa", "bb", "cc")
	
	不用拆包的代码:
		变量a = yuan[0]
		变量b = yuan[1]
		变量c = yuan[2]
		
	用拆包的代码:
		a, b, c = yuan

将拆包与字典的名字.items()结合使用:

zi  = {"name": "xiaoshu", "age": 20, "addr": "上海"}
# print(  zi.items()  )
#for item in zi.items():
	# print(item)    # 第一遍循环的时候item的值是:('name', 'xiaoshu')
					 # 第二遍循环的时候item的值是:('age', 20)
					 # 第三遍循环的时候item的值是:('addr', '上海')		
根据上面的情况,就可以写出下面的代码:	
for a, b in zi.items():
	print("键是%s, 键值是%s" % (a, b))				
元组需要注意的事项:元组里面只有一个项的时候,最后需要添加一个逗号
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值