python 基础之字典

1:字典的基本使用

字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。
字典是无序存储的,且key是可哈希的(不可变的类型),value可存可变的值。
不可变的类型:整形、支付串、元组。可变的类型:列表、字典。
dic = {'name': 'abc', 'age': '35',
       'bobby': {'girl_name': 'aaa', 'age': '23'},
       'is_handsome': True}

print(dic)  # 输出全部键和值
print(dic['name'])  # 用键取值

2:字典的两大特点:

1、键唯一
2、无序。

2:字典的创建方式

# 方式1,常用
dic = {'name': 'abc', 'age': '35',
       'bobby': {'girl_name': 'aaa', 'age': '23'},
       'is_handsome': True}
 # 方式2
dic2 = dict((('name', 'alex'), ('age', '23')))

3:对应操作

增加:

# 方式1
ret = dic.setdefault('age', 34)
print(ret)
# 键存在,不改变,返回字典相应的值
# 不存在:在字典中增加键值对并返回相应的键值
# 方式2
dic['code'] = '222'
print(dic)

查找:

# 查找,通过key查找value
a = dic['name']
print(a)
# 查看所有的键
print(dic.keys())
# 转换为列表
print(list(dic.keys()))
# 查看所有的值
print(dic.values())
# 转换为列表
print(list(dic.values()))
#键与值元组形式输出
print(list(dic.items()))

修改

# 按键修改值
dic['age'] = 55
print(dic['age'])
# 将一个字典添加到另一个字典中
dic2 = {'1':'111', '2': '222', '3': '333'}
dic3 = {'4': '444', '5': '555'}
dic2.update(dic3)
print(dic2)
print(dic3)
# 结果如下
{'1': '111', '2': '222', '3': '333', '4': '444',
 '5': '555'}
{'4': '444', '5': '555'}

删除

# 通过键删除键值对
del dic['name']
# 带返回值
a = dic.pop('name')
print(dic)
print(a)
# 删除字典随机一个键值对
a = dic.popitem()
print(a)
print(dic)
# 清空字典(字典存在)
print(dic.clear())
# 删除字典(字典不存在)
del dic

其他方法

# 将一个统一的值赋给所有的键
#案例1:
dic4 = dict.fromkeys(['host1', 'host2', 'host3'], 'test')
print(dic4)
# 结果如下
#{'host1': 'test', 'host2': 'test', 'host3': 'test'}
# 案例2:
dic4 = dict.fromkeys(['host1', 'host2', 'host3'], ['test', 'test1'])
print(dic4)
# 结果如下
#{'host1': ['test', 'test1'], 'host2': ['test', 'test1'], 'host3': ['test', 'test1']}

欢迎评论!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值