当前位置:   article > 正文

Python--字典_python字典代码

python字典代码

一、创建字典

字典包含两部分:“键”和“值”,“键”和“值”之间用冒号隔开。字典中键值是唯一的。

1、使用赋值运算符创建字典

dic = {} #创建空字典
dic = {'A': 20} #'A'是键,20为值
  • 1
  • 2

2、通过映射函数创建字典

格式:dictionary = dict(zip(key_list, value_list2))
dictionary :字典名称
zip()函数:用于将多个元组或列表对应位置的元素组合为元组,并返回包含这些内容的zip对象。若想得到元组,就用tuple()函数转为元组;若想得到列表,就用list()函数转为列表。
key_list:一个列表,用于生成字典的键
value_list2:一个列表,用于生成字典的值。
如果key_list和value_list2的长度不同,则与最短的列表长度相同。

key_list = ['a', 'b', 'c']
value_list = [1, 2, 3, 4, 5, 6] #与key_list的长度不同,则只取前三个元素和key_list中的元素匹配

dic = dict(zip(key_list, value_list))
print(dic)
  • 1
  • 2
  • 3
  • 4
  • 5

输出:

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

3、通过给定“键-值”对创建字典

格式:dictionary = dict(key1 = value1, key2 = value2, …, keyn = valuen)
dictionary :字典名
key1,key2:字典的键,必须唯一
value1,value2:字典的值

dic = dict(a = 1, b = 2, c = 3) #a、b、c为键,1、2、3为值
print(dic)
  • 1
  • 2

输出:

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

4、使用fromkeys()方法创建字典

格式:dict.fromkeys(seq[, value])
seq:字典键值列表
value:可选参数, 设置键序列(seq)的值,默认为 None

seq = ('Google', 'Runoob', 'Taobao')
 
# 不指定默认的键值,默认为 None 
thisdict = dict.fromkeys(seq)
print ("新字典为 : %s" %  str(thisdict))
 
# 指定默认的键值
thisdict = dict.fromkeys(seq, 10)
print ("新字典为 : %s" %  str(thisdict))
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

输出:

新字典为 : {'Google': None, 'Runoob': None, 'Taobao': None}
新字典为 : {'Google': 10, 'Runoob': 10, 'Taobao': 10}
  • 1
  • 2

5、推导式创建列表

格式;{表达式 for 迭代变量 in 可迭代对象 [if 条件表达式]}
if 条件表式:可选参数

import random
randomdict={i:random.randint(10,99) for i in range(1,5)}
print(randomdict)
 
#运行结果
{1: 61, 2: 19, 3: 97, 4: 14}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
olddict={'Jack': 4, 'Tom': 3}
newdict = {v: k for k, v in olddict.items() if v>3}
print(newdict)

输出结果:
{4: 'Jack'}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

二、访问字典元素

1、通过键-值对访问

dic = {'a':1, 'b':2, 'c':3}
print(dic['a'])

#输出结果:
1
  • 1
  • 2
  • 3
  • 4
  • 5

使用该方法访问元素时,如果键值不存在,则抛出异常

2、使用get()方法获取指定键的值

格式:dictionary_name.get(key, [default])
dictionary_name:字典名
default:可选参数,用于指定“键”不存在时返回的值,如果省略,则返回None。

dic = {'a':1, 'b':2, 'c':3}
print(dic.get('a'))

#输出
1
  • 1
  • 2
  • 3
  • 4
  • 5

3、使用items()方法

使用字典的items()方法可以获取键-值对,结合for循环便可以遍历字典

dic = {'a':1, 'b':2, 'c':3}

for key, value in dic.items():
    print(key, value)

#输出:
a 1
b 2
c 3
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
dic = {'a':1, 'b':2, 'c':3}

for item in dic.items():
    print(item)

#输出:
('a', 1)
('b', 2)
('c', 3)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

4、使用values()获取字典值

dic = {'a':1, 'b':2, 'c':3}
print(dic.values())

#输出
dict_values([1, 2, 3])
  • 1
  • 2
  • 3
  • 4
  • 5

三、字典的增、删、查、改

1、添加元素

1)、通过键-值对添加字典元素

格式:dictionary[key] = value
dictionary:字典名
key:要添加的键,必须是唯一的,并且不可变。可以是字符串、数字或元组。
value:元素值,可以是任何数据类型,不是必须唯一的。

dic = {'a':1, 'b':2, 'c':3}
dic['d'] = 4
print(dic)

#输出结果
{'a': 1, 'b': 2, 'c': 3, 'd': 4}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

2)、使用update()方法添加元素

dic = {'a':1, 'b':2, 'c':3}
dic.update(d = 4) #形式一
dic.update(e = 5) #形式二
dic.update({'f':6}) #形式三
dic.update(**{'g':7}) #形式四
print(dic)

#输出结果
{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5, 'f': 6, 'g': 7}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

2、删除元素

1)、使用del语句删除单个元素

dic = {'a':1, 'b':2, 'c':3}
del dic['c'] #删除key为c的元素
print(dic)

#输出结果
{'a': 1, 'b': 2}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

2)、使用pop()方法删除元素

格式:pop(key[,default])
key:要删除的键
default :当键 key 不存在时返回的值
如果 key 存在 - 删除字典中对应的元素
如果 key 不存在 - 返回设置指定的默认值 default
如果 key 不存在且默认值 default 没有指定 - 触发 KeyError 异常

dic = {'a':1, 'b':2, 'c':3}
dic.pop('c') #删除指定元素
print(dic)

#输出
{'a': 1, 'b': 2}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

3)、使用popitem()方法删除字典中最后一个元素

popitem方法返回并删除字典中的最后一对键和值。

dic = {'a':1, 'b':2, 'c':3}
dic.popitem() #删除字典中最后一个元素
print(dic)

#输出
{'a': 1, 'b': 2}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

4)、删除字典中所有元素

dic = {'a':1, 'b':2, 'c':3}
dic.clear() #清空字典
print(dic)

#输出
{}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

3、查找元素

1)、使用[]查找

若找不到对应的key值,会报一个KeyError错误。

dic = {'a':1, 'b':2, 'c':3}
print(dic['c'])

#输出
3
  • 1
  • 2
  • 3
  • 4
  • 5

2)、使用get()方法查找

若找不到对应的key值,返回None。

dic = {'a':1, 'b':2, 'c':3}
print(dic['c'])

#输出
3
  • 1
  • 2
  • 3
  • 4
  • 5

3)、使用setdefault()方法查找

格式:dict.setdefault(key, default=None)

参数:
key – 查找的键。
default – 键不存在时,设置的默认键值None。

返回值:
如果字典中包含有给定键,则返回该键对应的值,否则返回为该键设置的值。
如果字典中已经存在这个key,setdefault不会修改key原来的值,而且该方法会返回key原来的值

dic = {'a':1, 'b':2, 'c':3}
print(dic.setdefault('d', 666))

#输出
666
  • 1
  • 2
  • 3
  • 4
  • 5

4、修改元素

1)、通过[key]值修改元素值

dic = {'a':1, 'b':2, 'c':3}
dic['c'] = 100
print(dic)

#输出
{'a': 1, 'b': 2, 'c': 100}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

2)、通过update方法修改元素值

dic = {'a':1, 'b':2, 'c':3}
dic.update(a = 100) #形式一
dic.update({'b': 200}) #形式二
dic.update(**{'c': 300}) #形式三

print(dic)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

四、字典的其他操作

在这里插入图片描述
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/655168
推荐阅读
相关标签
  

闽ICP备14008679号