当前位置:网站首页 > Python编程 > 正文

python字典增加和删除(python字典的删除方法)



描述

Python 字典 copy() 函数返回一个字典的浅复制。

语法

copy()方法语法:

dict.copy()

参数

NA。

返回值

返回一个字典的浅复制。

实例

以下实例展示了 copy()函数的使用方法:

实例

#!/usr/bin/python3


dict1 = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}


dict2 = dict1.copy()

print ("新复制的字典为 : ",dict2)

以上实例输出结果为:

新复制的字典为 : {'Age': 7, 'Name': 'Runoob', 'Class': 'First'}

直接赋值和 copy 的区别

可以通过以下实例说明:

实例

#!/usr/bin/python

# -*- coding: UTF-8 -*-


dict1 = {'user':'runoob','num':[1,2,3]}


dict2 = dict1 # 浅拷贝: 引用对象

dict3 = dict1.copy() # 浅拷贝:深拷贝父对象(一级目录),子对象(二级目录)不拷贝,子对象是引用


# 修改 data 数据

dict1['user']='root'

dict1['num'].remove(1)


# 输出结果

print(dict1)

print(dict2)

print(dict3)

实例中 dict2 其实是 dict1 的引用(别名),所以输出结果都是一致的,dict3 父对象进行了深拷贝,不会随dict1 修改而修改,子对象是浅拷贝所以随 dict1 的修改而修改。

{'user': 'root', 'num': [2, 3]}

{'user': 'root', 'num': [2, 3]}

{'user': 'runoob', 'num': [2, 3]}

描述

Python 字典 fromkeys() 函数用于创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值。

语法

fromkeys() 方法语法:

dict.fromkeys(seq[, value])

参数

seq -- 字典键值列表。

value -- 可选参数, 设置键序列(seq)对应的值,默认为 None。

返回值

该方法返回一个新字典。

实例

以下实例展示了 fromkeys()函数的使用方法:

实例

#!/usr/bin/python3


seq = ('name', 'age', 'sex')


tinydict = dict.fromkeys(seq)

print ("新的字典为 : %s" % str(tinydict))


tinydict = dict.fromkeys(seq, 10)

print ("新的字典为 : %s" % str(tinydict))

以上实例输出结果为:

新的字典为 : {'age': None, 'name': None, 'sex': None}

新的字典为 : {'age': 10, 'name': 10, 'sex': 10}

不指定值:

实例

#!/usr/bin/python3


x = ('key1', 'key2', 'key3')


thisdict = dict.fromkeys(x)


print(thisdict)

以上实例输出结果为:

{'key1': None, 'key2': None, 'key3': None}

描述

Python 字典 get() 函数返回指定键的值。

语法

get()方法语法:

dict.get(key[, value])

参数

key -- 字典中要查找的键。

value -- 可选,如果指定键的值不存在时,返回该默认值。

返回值

返回指定键的值,如果键不在字典中返回默认值 None 或者设置的默认值。

实例

以下实例展示了 get() 函数的使用方法:

实例

#!/usr/bin/python

tinydict = {'Name': 'Runoob', 'Age': 27}

print ("Age : ", tinydict.get('Age'))

# 没有设置 Sex,也没有设置默认的值,输出 None

print ("Sex : ", tinydict.get('Sex'))

# 没有设置 Salary,输出默认的值 0.0

print ('Salary: ', tinydict.get('Salary', 0.0))

以上实例输出结果为:

Age : 27

Sex : None

Salary: 0.0

get() 方法 Vs dict[key] 访问元素区别

get(key) 方法在 key(键)不在字典中时,可以返回默认值 None 或者设置的默认值。

dict[key] 在 key(键)不在字典中时,会触发 KeyError 异常。

实例

>>> runoob = {}

>>> print('URL: ', runoob.get('url')) # 返回 None

URL: None

>>> print(runoob['url']) # 触发 KeyError

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

KeyError: 'url'

>>>

嵌套字典使用

get() 方法对嵌套字典的使用方法如下:

实例

#!/usr/bin/python

tinydict = {'RUNOOB' : {'url' : 'www.runoob.com'}}

res = tinydict.get('RUNOOB', {}).get('url')

# 输出结果

print("RUNOOB url 为 : ", str(res))

以上实例输出结果为:

RUNOOB url 为 : www.runoob.com

描述

Python 字典 in 操作符用于判断键是否存在于字典中,如果键在字典 dict 里返回 true,否则返回 false。

而 not in 操作符刚好相反,如果键在字典 dict 里返回 false,否则返回 true。

语法

in 操作符语法:

key in dict

参数

key -- 要在字典中查找的键。

返回值

如果键在字典里返回true,否则返回false。

实例

以下实例展示了 in 操作符在字典中的使用方法:

实例(Python 3.0+)

#!/usr/bin/python3


thisdict = {'Name': 'Runoob', 'Age': 7}


# 检测键 Age 是否存在

if 'Age' in thisdict:

print("键 Age 存在")

else :

print("键 Age 不存在")


# 检测键 Sex 是否存在

if 'Sex' in thisdict:

print("键 Sex 存在")

else :

print("键 Sex 不存在")



# not in


# 检测键 Age 是否存在

if 'Age' not in thisdict:

print("键 Age 不存在")

else :

print("键 Age 存在")

以上实例输出结果为:

键 Age 存在

键 Sex 不存在

键 Age 存在

范彪

范彪,毕业于西华师范大学国土资源学院,中共党员,中学一级教师,长期担任文科班班主任工作,现任年级地理备课组组长。

工作十余年,在教学工作和班主任管理工作中都取得了优秀的业绩。教学中,课堂氛围活跃,循序善诱,激发学生的创新意识和创新能力,深受到广大学生的爱戴,教学成绩突出,获得高考质量评估特等奖。

班主任管理工作中,积极开展各种活动,为每一个学生提供认识、反思和发展自我的机会,增强学生的个人成就感和集体荣誉感。先后担任过普通班、大火箭班、小火箭班的班主任。高考成绩尤为突出,所带学生1人考入北京大学,数十人考入中国政法大学、北京师范大学、中国音乐学院、哈尔滨工业大学等名校。在年度评比中,多次被评为市级或校级“优秀班主任”“优秀班集体”“优秀党员”等荣誉称号。

教育理念:知行合一,止于至善。


描述

Python 字典 items() 方法以列表返回视图对象,是一个可遍历的key/value 对。

dict.keys()、dict.values() 和 dict.items() 返回的都是视图对象( view objects),提供了字典实体的动态视图,这就意味着字典改变,视图也会跟着变化。

视图对象不是列表,不支持索引,可以使用 list() 来转换为列表。

我们不能对视图对象进行任何的修改,因为字典的视图对象都是只读的。

语法

items()方法语法:

dict.items()

参数

NA。

返回值

返回可视图对象。

实例

以下实例展示了 items() 方法的使用方法:

实例

#!/usr/bin/python3


tinydict = {'Name': 'Runoob', 'Age': 7}


print ("Value : %s" % tinydict.items())

以上实例输出结果为:

Value : dict_items([('Age', 7), ('Name', 'Runoob')])

描述

Python3 字典 keys() 方法返回一个视图对象。

dict.keys()、dict.values() 和 dict.items() 返回的都是视图对象( view objects),提供了字典实体的动态视图,这就意味着字典改变,视图也会跟着变化。

视图对象不是列表,不支持索引,可以使用 list() 来转换为列表。

我们不能对视图对象进行任何的修改,因为字典的视图对象都是只读的。

注意:Python2.x 是直接返回列表

语法

keys()方法语法:

dict.keys()

参数

NA。

返回值

返回一个视图对象。

实例

以下实例展示了 keys() 方法的使用方法:

实例

>>> dishes = {'eggs': 2, 'sausage': 1, 'bacon': 1, 'spam': 500}

>>> keys = dishes.keys()

>>> values = dishes.values()

>>> # 迭代

>>> n = 0

>>> for val in values:

... n += val

>>> print(n)

504

>>> # keys 和 values 以相同顺序(插入顺序)进行迭代

>>> list(keys) # 使用 list() 转换为列表

['eggs', 'sausage', 'bacon', 'spam']

>>> list(values)

[2, 1, 1, 500]

>>> # 视图对象是动态的,受字典变化的影响,以下删除了字典的 key,视图对象转为列表后也跟着变化

>>> del dishes['eggs']

>>> del dishes['sausage']

>>> list(keys)

['bacon', 'spam']

描述

Python 字典 setdefault() 方法和 get()方法 类似, 如果键不存在于字典中,将会添加键并将值设为默认值。

语法

setdefault()方法语法:

dict.setdefault(key, default=None)

参数

key -- 查找的键值。

default -- 键不存在时,设置的默认键值。

返回值

如果 key 在 字典中,返回对应的值。如果不在字典中,则插入 key 及设置的默认值 default,并返回 default ,default 默认值为 None。

实例

以下实例展示了 setdefault() 方法的使用方法:

实例

#!/usr/bin/python3


tinydict = {'Name': 'Runoob', 'Age': 7}


print ("Age 键的值为 : %s" % tinydict.setdefault('Age', None))

print ("Sex 键的值为 : %s" % tinydict.setdefault('Sex', None))

print ("新字典为:", tinydict)

以上实例输出结果为:

Age 键的值为 : 7

Sex 键的值为 : None

新字典为: {'Age': 7, 'Name': 'Runoob', 'Sex': None}

描述

Python 字典 update() 函数把字典参数 dict2 的 key/value(键/值) 对更新到字典 dict 里。

语法

update() 方法语法:

dict.update(dict2)

参数

dict2 -- 添加到指定字典dict里的字典。

返回值

该方法没有任何返回值。

实例

以下实例展示了 update()函数的使用方法:

实例(Python 2.0+)

#!/usr/bin/python3


tinydict = {'Name': 'Runoob', 'Age': 7}

tinydict2 = {'Sex': 'female' }


tinydict.update(tinydict2)

print ("更新字典 tinydict : ", tinydict)

以上实例输出结果为:

更新字典 tinydict : {'Name': 'Runoob', 'Age': 7, 'Sex': 'female'}

描述

Python3 字典 values() 方法返回一个视图对象。

dict.keys()、dict.values() 和 dict.items() 返回的都是视图对象( view objects),提供了字典实体的动态视图,这就意味着字典改变,视图也会跟着变化。

视图对象不是列表,不支持索引,可以使用 list() 来转换为列表。

我们不能对视图对象进行任何的修改,因为字典的视图对象都是只读的。

语法

values()方法语法:

dict.values()

参数

NA。

返回值

返回视图对象。

实例

以下实例展示了 values() 方法的使用方法:

实例

>>> dishes = {'eggs': 2, 'sausage': 1, 'bacon': 1, 'spam': 500}

>>> keys = dishes.keys()

>>> values = dishes.values()

>>> # 迭代

>>> n = 0

>>> for val in values:

... n += val

>>> print(n)

504

>>> # keys 和 values 以相同顺序(插入顺序)进行迭代

>>> list(keys) # 使用 list() 转换为列表

['eggs', 'sausage', 'bacon', 'spam']

>>> list(values)

[2, 1, 1, 500]

>>> # 视图对象是动态的,受字典变化的影响,以下删除了字典的 key,视图对象转为列表后也跟着变化

>>> del dishes['eggs']

>>> del dishes['sausage']

>>> list(values)

[1, 500]

>>> #相同两个 dict.values() 比较返回都是 False

>>> d = {'a': 1}

>>> d.values() == d.values()

False

到此这篇python字典增加和删除(python字典的删除方法)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • python 没有return返回none(python函数中没有return)2025-04-06 09:54:04
  • python3.8新建py文件(python3.8怎么新建文件)2025-04-06 09:54:04
  • py文件怎么生成exe(python生成pyc文件)2025-04-06 09:54:04
  • python如何绘制函数图像(python绘制函数图像代码)2025-04-06 09:54:04
  • python中如何向字典中添加删除元素(python字典删除指定元素)2025-04-06 09:54:04
  • python中函数的定义和调用(python中函数的定义与调用)2025-04-06 09:54:04
  • python函数的定义与应用(python程序中函数的定义)2025-04-06 09:54:04
  • python list字符转数字(python list字符串转list)2025-04-06 09:54:04
  • pivot函数 excel(pivot函数 python)2025-04-06 09:54:04
  • vs怎么用python(vs怎么用Python怎么输入)2025-04-06 09:54:04
  • 全屏图片