Python基础入门—字典dict

目录

  • 字典

    • 字典的定义
    • 字典对象增加元素
    • 字典对象元素删除
    • 字典对象的修改
    • 字典对象元素的查找
    • 字典的深浅拷贝

字典

  • 字典是一种可变数据类型
  • 点典的元素存储方式是键值对的形式,键值对之间用逗号隔开
  • 键值对的形式形如:key:value
  • 最外层用{}括起来
  • d = {key1 : value1, key2 : value2 }
  • 由于字典是键值对的形式,所以字典是无序的,自然不能切片和索引,而是通过键来取值

键:一般是唯一的,如果重复最后的一个键值对会替换前面的,值不需要唯一
值:可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组

字典的定义

  1. dict()来创建
a = dict([('a',1),('b',2),('c',3)])
a
type(a)

{'a':1,'b':2,'c':3}
dict
  1. 直接赋值{}
b = {'a':1,'b':2,'c':3}
b
type(b)

{'a':1,'b':2,'c':3}
dict

字典对象增加元素

  1. dict[键名] = 值
c = {'a':1,'b':2,'c':3}
c['e'] = 4
e

{'a':1,'b':2,'c':3,'e':4}
  1. dict.setdefault(’新键名‘,值)
d = {'a':1,'b':2,'c':3}
d.setdefault('e',4)
d

{'a':1,'b':2,'c':3,'e':4}
  1. dict1.update(dict2)
    类似列表extend()

字典对象元素删除

常用的5种方法

del 字典名[‘键名‘] 删除指定键值
字典名.pop(‘键名‘) 删除键值+弹出值
字典名.popitem() 随机删除一对(一般最后一对)+弹出
字典名.clear() 删除词典内所有元素(和列表对应操作相同)
del 字典名 删除整个词典(和列表对应操作相同)

Examples:

scores={"Mike":88,"Tom":89,"Mary":95,"Jack":95}
scores.clear()
scores 

{}
scores={"Mike":88,"Tom":89,"Mary":95,"Jack":95}
del scores['Mike']
scores

{'Tom': 89, 'Mary': 95, 'Jack': 95}

字典对象的修改

字典名[键] = 新值

字典对象元素的查找

字典名[‘键名‘] 返回改键所对应的值
字典名.get(‘键名‘) 返回改键所对应的值
字典名.keys() 返回包含所有键的列表
字典名.values() 返回包含所有值的列表
字典名.items() 返回所有包含键值对的列表

Examples:

scores={"Mike":88,"Tom":89,"Mary":95,"Jack":95}
scores.get('Mary')

95
scores={"Mike":88,"Tom":89,"Mary":95,"Jack":95}
scores.items()

dict_items([("Mike":88),("Tom":89),("Mary":95),("Jack":95)])

字典的深浅拷贝

  1. 浅拷贝
    两个字典的内存地址不同,但内部元素指向同一内容空间

Examples:

a = {'a':1, 'b':(1, 2), 'c':[1, 2, 3], 'd':(1, 2, {1:1}), 'e':{1, 2, 3}}
b = copy(a)
id(a)
id(b)

82254800
82254224 # 不同电脑运行结果不同,但a,b两个字典的id不同

[id(x) for x in a]
[id(x) for x in b]
[30713928, 30712248, 30378392, 30622024, 30621968]
[30713928, 30712248, 30378392, 30622024, 30621968]
# 内部的item的id 是一样的  说明内部的元素指向同一个值

原文地址:https://www.cnblogs.com/LAUGH-TALE/p/11646034.html

时间: 2024-10-10 11:12:14

Python基础入门—字典dict的相关文章

Python基础之字典dict(薄弱环节重点回顾,记不住打死自己)

字典是我Python基础里面学的最薄弱的环节,重新回顾,务必深入骨髓. Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,字典是另 一种可变容器模型,且可存储任意类型对象.具有极快的查找速度. 字典是一种通过名字或者关键字引用的得数据结构,其键可以是数字.字符串.元组.布尔值也可以,这种结构类型也称之为映射.字典类型是Python中唯一內建的映射类型. 重点就是字典的键必须是可以被哈希的,什么叫可以被哈希我说不上来,简单的说就是不可变对象. a=

python基础之字典dict

不可变数据类型:tuple.bool.int.str --可哈希类型可变数据类型:list.dict.set --不可哈希类型dict-key 必须是不可变数据类型,可哈希dict-value 任意数据类型dict 优点:二分查找.存储大量的关系型数据 特点:无序的-没有索引,只能按照键值对查找增:dict[key] = value dict.setdefault(key) dict.setdefault(key ,value)删:dict.pop(key) dict.pop(key,retur

python基础入门---字典操作

#key-value info = { 'stu1101': "luyi", 'stu1102': "yuanjinxia", 'stu1103': "situomo", } for i in info: print(i,info[i]) for k,v in info.items():#先转成列表再打印 print(k,v) ''' b = { 'stu1101':"qjh", 1:3, 2:5 } info.update(

python基础之字典及字符

python基础之字典及字符串处理 本节内容 字典介绍及内置方法 字符串处理 1.字典介绍及内置方法 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的.可哈希表示key必须是不可变类型,如:数字.字符串.元组. 字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型.列表是有序的对象结合,字典是无序的对象集合.两者

15.python 字典dict - python基础入门

前面的课程讲解了字符串str/列表list/元组tuple,还有最后一种比较重要的数据类型也需要介绍介绍,那就是python字典,俗称:dict. python中的字典可与字符串/列表/元组不同,因为字典dict需要由两部分组成,分别是key和value,简称:键值对,下面具体讲解一下关于字典的特点: 1.由一个或者多个键值对构成,键值对的类型可以不相同也可以相同: 2.字典中的键值对需要写在{}中括号内部,键值对中的key和value用:隔开,键值对与键值对之间用逗号隔开: 3.字典是一个无序

Python 基础之字典(dict)的用法

python dict字典字典是Python中唯一的内建映射类型,字典中的数据没有特定的顺序,可以通过特定的键(key)来存取数据.键可以是数字.元组或字符串,但不能是列表. 字典的常用方法:1.1 clear()方法1.2 copy()方法1.3 fromkeys()方法1.4 get()方法1.5 has_key()方法1.6 items.iteritems方法1.7 keys.iterkeys1.8 popitem()方法1.9 setdefault()方法1.10 update()方法1

Python 基础 4-1 字典入门

引言 字典 是Python 内置的一种数据结构,它便于语义化表达一些结构数据,字典是开发中常用的一种数据结构 字典介绍 字典使用花括号 {} 或 dict 来创建,字典是可以嵌套使用的 字典是成对出现的,字典以键(key)值(value)对形式体现 键与值之间用冒号 : 分隔,每个键值对之间用逗号 , 分隔开 字典的 key 是唯一的,而 value 可以重复出现 字典的 key 不使用中文或其他字符,这是业内约定俗成的做法 创建字典 字典可以使用花括号 {} 或 dict 函数来创建 1. 使

Python基础知识---字典

现在在实习期间,好久没用Python了,今天在做Java项目时用的HashMap让我联想到了Python中的字典,就写一些Python字典的知识吧,复习复习. 字典:  key --> value的映射关系,字典是无序性的,字典的key是不可变类型的,如int, str, float,tuple... 1.创建字典 (1)第一种方式创造字典,一次给全 >>> user = {'id': 1000, 'name': 'scd', 'password':'123'} >>&

Python基础入门教程,Python学习路线图

给大家整理的这套python学习路线图,按照此教程一步步的学习来,肯定会对python有更深刻的认识.或许可以喜欢上python这个易学,精简,开源的语言.此套教程,不但有视频教程,还有源码分享,让大家能真正打开python的大门,进入这个领域.现在互联网巨头,都已经转投到人工智能领域,而人工智能最好的编程语言就是python,未来前景显而易见.黑马程序员是国内最早开设人工智能的机构. 一.首先先推荐一个教程 8天深入理解python教程:http://pan.baidu.com/s/1kVNm