Python数据类型之四(字典)

字典: 格式:dict{}数据类型划分:可变数据类型 与 不可变数据类型

可变数据类型 称为:可哈希元组 bool int str    不可变数据类型 称为:不可哈希 如:list bict set

dict key :必须是不可变数据类型     value : 任意数据类型

dict 的优点:            二分查找去查询 (速度快)            存储大量的关系型数据            3.5版本之前是无序的。3.6版本以后好像是有序的。
创建一个dict:
dic = {
        ‘name‘:[‘taibai ‘,‘alexC‘,‘AbC ‘,‘egon‘,‘ Ritian‘,‘ Wusir‘,‘  aqc‘],
        ‘py9‘:{
                ‘time‘:‘1213‘
                ‘learn_money‘:19800
                ‘addr‘:‘CBD‘

                },
        ‘age‘:21
        }

增:

增:
dic[‘name‘] = ‘小刚‘ #无序添加。有键值对,直接覆盖。
print(dic)
#输出:{‘age‘: 20, ‘sec‘: ‘male‘, ‘name‘: ‘小刚‘}

dic[‘high‘] = 185 #无序添加。没有键值对,直接添加新内容。
print(dic)
#输出:{‘high‘: 185, ‘age‘: 20, ‘name‘: ‘小明‘, ‘sec‘: ‘male‘}

使用setdefault增,PS:当字典中有键值对时不会做任何改变。没有时才会添加。
dic.setdefault(‘weight‘) #添加新的键。
print(dic)
#输出:{‘name‘: ‘小明‘, ‘weight‘: None, ‘age‘: 20, ‘sec‘: ‘male‘}

dic.setdefault(‘weight‘,‘150‘) #添加新的键。还有 值。
print(dic)
#输出:{‘name‘: ‘小明‘, ‘age‘: 20, ‘weight‘: ‘150‘, ‘sec‘: ‘male‘}

dic.setdefault(‘name‘,‘小刚‘) #没有任何变化
print(dic)

删:

dic = {‘name‘:‘小明‘,‘age‘:20,‘sec‘:‘male‘}

pop 有返回值,按 键 删除。
print(dic.pop(‘name‘)) #打印出 删掉的内容
print(dic) #打印删除后的列表

print(dic.pop(‘abc‘,‘自定义‘)) #后边自定义位置默认为 None 为了在不确定是否有‘abc‘情况下 防止报错
输出:自定义

print(dic.pop(‘abc‘))
#报错:  File "G:/lod_boy_S9_Python/5Day/test.py", line 49, in <module>
        print(dic.pop(‘abc‘))
        KeyError: ‘abc‘
print(dic)

print(dic.popitem()) #有返回值 随即删除
print(dic)

dic.clear() #清空字典
print(dic)

del dic  #删除字典。会报错。
print(dic)

del dic[‘name‘] #del 也可以删除 键值对
print(dic)

改:

dic = {‘name‘:‘小明‘,‘age‘:16,‘sec‘:‘male‘}
dic2 = {‘age‘:20,‘sec‘:‘male‘,‘love‘:‘moli‘}

dic[‘age‘] = 16 #通过 键 修改 值
print(dic)

dic2.update(dic) #将dic1的内容 添加到dic2 遵守 没有就添加,有就替换的原则。
print(dic2)
print(dic)

查:

dic = {‘age‘:20,‘sec‘:‘male‘,‘love‘:‘moli‘}

print(dic.keys()) #列表类型 打印键
print(dic.values()) #列表类型 打印值
print(dic.items()) #无序的情况下 已 元组类型 打印出 键值对

for i in dic : # 默认已 str类型 打印出 键
    print(i)

print(dic.get(‘张三‘,‘该用户不存在‘))  #在不确定的情况下 可以查询该键是否存在 并且不报错

for k,v in dic.items() :  #去除元组的括号 分别将 键 值 赋给 k v
    print(k , v)

原文地址:https://www.cnblogs.com/zhouxinyu/p/8510804.html

时间: 2024-08-30 10:42:23

Python数据类型之四(字典)的相关文章

Python数据类型-6 字典

字典 Python的字典数据类型是基于hash散列算法实现的,采用键值对(key:value)的形式,根据key的值计算value的地址,具有非常快的查取和插入速度.但它是无序的,包含的元素个数不限,值的类型也可以是其它任何数据类型! 字典的key必须是不可变的对象,例如整数.字符串.bytes和元组,但使用最多的还是字符串. 列表.字典.集合等就不可以作为key.同时,同一个字典内的key必须是唯一的,但值则不必. 字典可精确描述为不定长.可变.无序.散列的集合类型 字典的每个键值对用冒号(:

Python数据类型(字典和集合)

1.5 Dictionary(字典) 在Python中,字典用放在花括号{}中一系列键-值对表示.键和值之间用冒号分隔,键-值对之间用逗号分隔. 在字典中,你想存储多少个键-值对都可以.每个键都与一个值相关联,你可以使用键来访问与之相关联的值.与键相关联的值可以是数字.字符串.列表乃至字典.事实上,可将任何Python对象用作字典中的值. >>> alien_0 = {'color': 'green', 'point': 5} >>> print(alien_0) {'

Python数据类型(字典)

文章内容参考了教程:http://www.runoob.com/python/python-basic-syntax.html#commentform Python 字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示: d = {key1 : value1, key2 : value2 } 键必须是唯一的,但值则不必. 值可以取任何数据

Python数据类型之字典

一.什么是字典 1.字典是Python中惟一的一个映射类型,有{}括起来的键值对组成, 2.字典中元素的键: 都必须是可哈希的   不可变的数据类型就可以当做字典中的键 3.字典中元素的值: 没有任何限制,什么数据类型都可以 二.字典的增删改查 1.增 dic[key]=value  直接进行添加 (key:value) (此方法也可用于修改字典) dic.setdefault(key,value) 如果键已经在字典中存在则不进行任何操作,否则就添加(key:value) 不输入value参数则

Python学习(十一) Python数据类型:字典(重要)

字典dict: 字典其实就相当于java里面的Map,用来存储键值对的.其中存储的数据时无序的. 假如有这样的数据: t1=['name','age','sex'] t2=['tom',30,'male'] 通过zip(t1,t2)可以获取到这样的数据[('name','tom'),('age',30),('sex','male')] 字典定义是通过 {}进行的. 字典是Python当中唯一的映射类型(哈希表),字段对象时可变的,但是字典对象的键必须是不可变的,并且一个字典中可以包含不通类型的键

Python数据类型之字典二.

一.基本数据类型 整数:int 字符串:str(注:\t等于一个tab键) 布尔值: bool 列表:list  列表用[] 元祖:tuple 元祖用() 字典:dict 注:所有的数据类型都存在想对应的类列里,元祖和列表功能一样,列表可以修改,元祖不能修改. 二.字典所有数据类型: 常用操作: 索引 新增 删除 键.值.键值对 循环 长度 class dict(object): """ dict() -> new empty dictionary dict(mappi

objective-c 中数据类型之四 字典(NSDictionary)

// 1. 字典初始化.赋值方式1 NSMutableDictionary *m_dictionary = [[NSMutableDictionary alloc] initWithCapacity:0]; [m_dictionary setObject:@1 forKey:@"语文"]; [m_dictionary setObject:@2 forKey:@"数学"]; [m_dictionary setObject:@3 forKey:@"英语&quo

Python 基础之四基本数据类型

初识Python数据类型 数字 Int,整型 Float,浮点型 Long,长整型 布尔 字符串 列表 元组 字典 1.数字 INT(整型) 在32位系统上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648 ~ 2147483647. 在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808 ~ 9223372036854775807. LONG(长整型) Python的长整型没有指定位宽,即:Py

python基础数据类型之字典+集合

一.数据类型之字典 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的.可哈希表示key必须是不可变类型,如:数字.字符串.元组. 字典(dictionary)是除列表意外python之中最灵活的内置数据结构类型.列表是有序的对象结合,字典是无序的对象集合.两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取. 总结:1.字