当前位置:   article > 正文

python疑难杂症(9)---python的数据类型字典(dict)的创建、访问、修改、删除等方法汇总_python 字典类型增加新

python 字典类型增加新

在Python中,字典(Dictionary)是一种内置的数据烈性,是无序的数据结构,用于存储键值对(key-value)。字典中的每个元素由一个键(key)和一个对应的值(value)组成,键和值之间使用冒号(:)进行分隔,每个键值对之间使用逗号(,)进行分隔。字典中的键必须是唯一的,而值可以是任意类型的对象,字典可以用来 存储多个数据。

如:

mydict = {'浪潮信息': 17.4, '紫光股份': 28.6, '光迅科技': 7.56,'中科曙光':14.55}

print(mydict)

Python中的字典主要有以下一些特点:

无序性:字典中的元素没有固定的顺序,不能通过索引来访问元素。

可变性:可以向字典中添加、修改或删除元素。

唯一键:字典中的键必须是唯一的,如果添加了相同的键,则后面的键值对会覆盖前面的键值对。

值可重复性:在字典中的键值对中,键是唯一的,而值是可以重复的,即同一值可以跟到不同的键值后。

创建字典

很显然,使用字典之前需要先创建。在Python中,可以使用花括号 {} 或者 dict() 函数来创建字典。字典由键值对组成,每个键值对之间使用逗号 , 键和值之间分隔使用冒号 : 。以下是几种创建字典的方式示例:

创建字典

1、使用{} 创建字典:

# 创建一个空字典

my_dict = {}

# 创建一个包含键值对的字典

mydict = {'浪潮信息': 17.4, '紫光股份': 28.6, '光迅科技': 7.56,'中科曙光':14.55}

print(mydict)

输出:{'浪潮信息': 17.4, '紫光股份': 28.6, '光迅科技': 7.56, '中科曙光': 14.55}

2、使用 dict() 函数创建字典:

# 创建一个空字典

mydict = dict()

# 创建一个包含键值对的字典

mydict = dict(key1='value1', key2='value2', key3='value3')

输出:{'浪潮信息': 17.4, '紫光股份': 28.6, '光迅科技': 7.56, '中科曙光': 14.55}

键值之间通过“=”链接。

# 使用列表或元组创建字典

实际就是将元组转换为字典的方式。

mydict1 = dict([('key1', 'value1'), ('key2', 'value2'), ('key3', 'value3')])

{'浪潮信息': '17.4', '紫光股份': '28.6', '光迅科技': '7.56'}

3、使用字典推导式创建字典:

# 创建一个包含键值对的字典

mydict = {key: value for key, value in [('浪潮信息', '17.4'), ('紫光股份', '28.6'), ('光迅科技', '7.56')]}

print(mydict)

输出:{'浪潮信息': '17.4', '紫光股份': '28.6', '光迅科技': '7.56'}

4、通过一个字典创建另一个字典copy(浅拷贝)

mydict = {key: value for key, value in [('浪潮信息', '17.4'), ('紫光股份', '28.6'), ('光迅科技', '7.56')]}

print(mydict)

dictcp= mydict.copy()

dictcp

输出: {'浪潮信息': '17.4', '紫光股份': '28.6', '光迅科技': '7.56'}

5、fromkeys(seq[, value])

使用指定的序列元素作为键,创建一个新字典,所有键对应的值都是 value。dictaa=dict.fromkeys(['人形机器人','小米汽车','短剧游戏','多模态Ai'])

dictaa

输出:{'人形机器人': None, '小米汽车': None, '短剧游戏': None, '多模态Ai': None}

注意此处的值,对应所有的键key,而不是和键一一对应的,如果没有值,则自动赋值为空。

访问字典

在Python中,可以通过键来访问字典中的值。以下是几种常见的访问字典的方式:

1、利用方括号和键的方式,可以直接访问字典中对应键的值

mydict = dict(浪潮信息=17.4, 紫光股份= 28.6, 光迅科技=7.56,中科曙光=14.55)

print(mydict['浪潮信息'])

输出:17.4

2、使用get()方法访问值

get()方法可以根据给定的键来获取对应的值,如果键不存在,会返回None。

print(mydict['光迅科技']) 

输出: 7.56

3、使用keys()方法遍历所有键

keys()方法返回一个包含字典所有键的迭代器,可以用于遍历所有键。

for key in mydict.keys():

   print(key) 

 输出: 浪潮信息

紫光股份

光迅科技

中科曙光

也可以直接使用key in mydict,来直接取到的键值,速度要快。

for key in mydict:

   print(key) 

4、使用values()方法遍历所有值

values()方法返回一个包含字典所有值的迭代器,可以用于遍历所有值。

person = {"name": "John", "age": 25, "city": "New York"}

for value in mydict.values():

   print(value) 

输出: 17.4

28.6

7.56

14.55

5、使用items()方法遍历所有键值对

items()方法返回一个包含字典所有键值对的迭代器,可以用于遍历所有键值对。

person = {"name": "John", "age": 25, "city": "New York"}

for key, value in mydict.items():

   print(key, value) 

输出:浪潮信息 17.4

紫光股份 28.6

光迅科技 7.56

中科曙光 14.55

修改字典

在Python中,可以通过以下方式修改字典中的值:

1、通过键直接赋值修改值:

mydict["浪潮信息"] = "test1"

print(mydict)  # 输出:

{'浪潮信息': 'test1', '紫光股份': 28.6, '光迅科技': 7.56, '中科曙光': 14.55}

修改值时,其属性也会随值修改。

2、使用update()方法批量修改键值对

update()方法接受一个字典作为参数,用于同时修改多个键值对。可以是另一个字典对象或任何键值对迭代器。

print(mydict)

mydict.update({"浪潮信息": "修改测试", "紫光股份": 1000,"闻泰科技":500.73})

print(mydict)

输出:

{'浪潮信息': '修改测试', '紫光股份': 1000, '光迅科技': 7.56, '中科曙光': 14.55, '闻泰科技': 500.73}

{'浪潮信息': '修改测试', '紫光股份': 1000, '光迅科技': 7.56, '中科曙光': 14.55, '闻泰科技': 500.73}

从结果可以知道,update函数,根据键值直接修改对应的值,如果又不存在的键值,则直接在后面新增加字典的键值。

3、使用setdefault()方法修改值或添加新键值对。

setdefault()方法接受两个参数,第一个参数为要设置的键,第二个参数为默认值。如果键存在,则返回对应的值;如果键不存在,则设置该键的值为默认值,并返回默认值。

print(mydict)

print(mydict.setdefault("color", "Red"))

print(mydict)

输出:

{'浪潮信息': '修改测试', '紫光股份': 1000, '光迅科技': 7.56, '中科曙光': 14.55, '闻泰科技': 500.73}

Red

{'浪潮信息': '修改测试', '紫光股份': 1000, '光迅科技': 7.56, '中科曙光': 14.55, '闻泰科技': 500.73, 'color': 'Red'}

print(mydict)

print(mydict.setdefault("浪潮信息", "test setdefault"))

print(mydict)

输出:

{'浪潮信息': '修改测试', '紫光股份': 1000, '光迅科技': 7.56, '中科曙光': 14.55, '闻泰科技': 500.73, 'color': 'Red'}

修改测试

{'浪潮信息': '修改测试', '紫光股份': 1000, '光迅科技': 7.56, '中科曙光': 14.55, '闻泰科技': 500.73, 'color': 'Red'}

删除字典

1、使用del语句删除字典或字典中的键值对

使用del语句后跟字典名和要删除的键,可以删除字典中的键值对。如果使用del语句后跟字典名,则会删除整个字典。

print(mydict)

del mydict['color']

print(mydict)

输出:

{'浪潮信息': '修改测试', '紫光股份': 1000, '光迅科技': 7.56, '中科曙光': 14.55, '闻泰科技': 500.73, 'color': 'Red'}

{'浪潮信息': '修改测试', '紫光股份': 1000, '光迅科技': 7.56, '中科曙光': 14.55, '闻泰科技': 500.73}

del mydict

print(mydict) # 删除整个字典,删除后,再输出提示不存在。

2、使用pop()方法删除指定键的键值对并返回其值

pop()方法接受一个键作为参数,用于删除字典中指定键的键值对,并返回该键对应的值。如果键不存在,则返回 default 指定的值;如果没有指定 default (且键不存在),则引发 KeyError。

mydict = dict(浪潮信息=17.4, 紫光股份= 28.6, 光迅科技=7.56,中科曙光=14.55)

print(mydict)

print(mydict.pop('浪潮信息'))

print(mydict)

输出:

 {'浪潮信息': 17.4, '紫光股份': 28.6, '光迅科技': 7.56, '中科曙光': 14.55}

17.4

{'紫光股份': 28.6, '光迅科技': 7.56, '中科曙光': 14.55}

3、使用clear()方法清空字典中的所有键值对

clear()方法用于移除字典中的所有元素,使字典变为空字典。

用于字典的方法print(mydict)

mydict.clear()  # 清空字典

print(mydict)  # 输出: {}

输出:

{'紫光股份': 28.6, '光迅科技': 7.56, '中科曙光': 14.55}

{}

用于字典的方法

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

闽ICP备14008679号