python入门之字典

目录 

一、字典的定义

 二、字典常用操作

 三、循环遍历

 四、应用场景

一、字典的定义

dictionary(字典)是除列表以外python之中最灵活的数据类型

字典同样可以用来存储多个数据,通常用于存储描述一个物体的相关信息

和列表的区别:列表是有序的对象集合,字典是无序的对象集合

字典用{}定义

字典使用键值对存储数据,键值对之间使用,分隔

键key是索引

值value是数据

键和值之间使用:分隔

键必须是唯一的

值可以取任何数据类型,但键只能使用字符串、数字或元组

# 字典是一个无序的数据集合,使用print函数输出字典时,通常
# 输出的顺序和定义的顺序是不一致的!
xiaoming = {"name":"小明",
            "age":18,
            "gender":True,
            "height":1.75}


print(xiaoming)

 

 二、字典常用操作

在ipython3中定义一个字典,例如:xiaoming = {}

输入xiaoming.按下TAB键,ipython会提示字典能够使用的函数如下:

字典的增删改查:

xiaoming_dict = {"name":"小明",
                 "gender":True,
                 "height":1.75}

# 1.取值
print(xiaoming_dict["name"])
# 在取值的时候,如果指定的key不存在,程序会报错!
# print(xiaoming_dict["name123"])

# 2.增加/修改
# 如果key不存在,会新增键值对
xiaoming_dict["age"] = 18
# 如果key存在,会修改已经存在的键值对
xiaoming_dict["name"] = "小小明"

# 3.删除
# 在删除指定键值对的时候,如果指定的key不存在,程序会报错!
# xiaoming_dict.pop("name123")
xiaoming_dict.pop("name")

print(xiaoming_dict)

 字典的统计、合并、清空操作:

xiaoming_dict = {"name":"小明",
                 "age":"18",
                 "gender":True}

# 1.统计键值对数量
print(len(xiaoming_dict))

# 2.合并字典
temp_dict = {"height": 1.75,
             "age":"20"}
# 注意:如果被合并的字典中包含已经存在的键值对,会覆盖原有的键值对
xiaoming_dict.update(temp_dict)
print(xiaoming_dict)

# 3.清空字典
xiaoming_dict.clear()
print(xiaoming_dict)

 三、循环遍历

遍历就是依次从字典中获取所有键值对

# for循环内部使用的'key 的变量' in 字典
for k in xiaoming:

    print("%s" % (k,xiaoming[k]))

提示:在实际开发中,由于字典中每一个键值对保存数据的类型是不同的,所以针对字典的循环遍历需求并不是很多

xiaoming_dict = {"name":"小明",
                 "qq":"123456",
                 "phone":"10086"}

# 迭代遍历字典
# 变量k是每一次循环中,获取到的键值对的key
for k in xiaoming_dict:

    print("%s - %s" % (k,xiaoming_dict[k]))

 四、应用场景

尽管可以使用for in遍历字典,但是在开发中,更多的应用是:

使用多个键值对,存储描述一个物体的相关信息--描述更复杂的数据信息

将多个字典放在一个列表中,再进行遍历,在循环体内针对每一个字典进行相同的处理

card_list = [{"name":"张三",
              "qq":"12345",
              "phone":"110"},
             {"name":"李四",
              "qq":"54321",
              "phone":"10086"}
             ]

for card_info in card_list:

    print(card_info)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值