python修改字典键(key)的方法
python字典中,值可任意更改;但键是唯一的,不支持直接修改。若真的需要修改字典中的键,可通过几种间接方式实现。
新建空白字典。
info = {}
给字典添加键-值对。
info["x"] = 1.5 info["y"] = 2 info
字典的键(key)不支持直接修改。如图,试图直接修改键会报错。
info = {"x":1.5 ,"y":2} info["z"] = info("x") print(info)
如需修改字典的键值,需要通过间接的方法。
第一种方法:将需要修改的键对应的值用dict.pop() 的方法提取出来,并重新赋值给新的键,即dict[新的键] = dict.pop(旧的键)。(字典dict的pop是删除某个键及其对应的值,返回的是该键对应的值)
info = {"x":1.5 ,"y":2} info["z"] = info.pop("x") info
第二种方法:结合dict.pop() 和dict.update() 的方法。(字典dict的pop是删除某个键及其对应的值,返回的是该键对应的值)
info = {"x":1.5 ,"y":2} info.update({"z":info.pop("x")}) info
第三种方法:结合直接修改和del语句。先用直接修改的方式将旧键赋值给新的键,再用del语句删除原来的键名。
info = {"x":1.5 ,"y":2} info["z"] = info["x"] del info["x"] info
内容扩展
间接修改键的key值方法
第一种(推荐):
dict={'a':1, 'b':2} dict["c"] = dict.pop("a")
第二种方法:
dict={'a':1, 'b':2} dict.update({'c':dict.pop("a")})
第三种方法:
dict={'a':1, 'b':2} dict['c']=dict['a'] del dict['a']
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Python两个字典键同值相加的几种方法
两个字典A = {'a': 1, 'b': 2, 'c': 3}, B = {'b': 4, 'c': 6, 'd': 8} 要合并这两个字典,键值同则相加. 两个字典如果不考虑键相同则相加的话,可以使用d1.update(d2)可以很方便合并,但这样的后面的字典到中的值会覆盖字典d1中的值. >>> A = {'a': 1, 'b': 2} >>> B = {'a': 8, 'c': 3} >>> A.update(B) >>> A
-
Python 按字典dict的键排序,并取出相应的键值放于list中的实例
方法一: def dict_to_numpy_method1(dict): dict_sorted=sorted(dict.iteritems(), key=lambda d:d[0]) results=[value for key,value in dict_sorted] 方法二: def dict_to_numpy_method2(dict): keys=dict.keys() keys.sort() results=[dic[key] for key in keys] 方法三: def
-
python字典一键多值实例代码分享
python中字典可以一键多值,也就是意味着一个键可以对应多个值. 例: #encoding=utf-8 print '中国' #字典的一键多值 print'方案一 list作为dict的值 值允许重复' d1={} key=1 value=2 d1.setdefault(key,[]).append(value) value=2 d1.setdefault(key,[]).append(value) print d1 #获取值 print '方案一 获取值' print list(d1[key
-
python 根据字典的键值进行排序的方法
1.利用key排序 d = {'d1':2, 'd2':4, 'd4':1,'d3':3,} for k in sorted(d): print(k,d[k]) d1 2 d2 4 d3 3 d4 1 2.利用value排序:__getitem__ d = {'d1':2, 'd2':4, 'd4':1,'d3':3,} for k in sorted(d,key=d.__getitem__): print(k,d[k]) d4 1 d1 2 d3 3 d2 4 反序:reverse=True
-
Python 互换字典的键值对实例
1.zip dic = {'a':1, 'b':2, 'c':3} dic_new = dict(zip(dic.values(), dic.keys())) print(dic_new) # {1: 'a', 2: 'b', 3: 'c'} 2.循环 dic = {'a':1, 'b':2, 'c':3} dic_new = {} for key, val in dic.items(): dic_new[val] = key print(dic_new) # {1: 'a', 2: 'b',
-
python修改字典内key对应值的方法
本文实例讲述了python修改字典内key对应值的方法.分享给大家供大家参考.具体实现方法如下: d2 = {'spam': 2, 'ham': 1, 'eggs': 3} # make a dictionary print d2 # order is scrambled d2['ham'] = ['grill', 'bake', 'fry'] # change entry print d2 运行结果如下: {'eggs': 3, 'ham': 1, 'spam': 2} {'eggs': 3,
-
python修改字典键(key)的方法
python字典中,值可任意更改:但键是唯一的,不支持直接修改.若真的需要修改字典中的键,可通过几种间接方式实现. 新建空白字典. info = {} 给字典添加键-值对. info["x"] = 1.5 info["y"] = 2 info 字典的键(key)不支持直接修改.如图,试图直接修改键会报错. info = {"x":1.5 ,"y":2} info["z"] = info("x&qu
-
Python查找多个字典公共键key的方法
目录 1.如何快速找到多个字典中的公共键(key) 2.代码演示 3.快速找到多个字典中的公共键(key)的方法(补充) 方法一:for in循环 方法二:利用集合的交集操作 方法三:使用map即reduce(用于求n个字典的公共key) 1.如何快速找到多个字典中的公共键(key) 实际案例: 西班牙足球甲级联赛,每轮球员进球统计: 第一轮:{'苏亚雷斯': 1, '梅西': 2, '本泽马': 1, 'C罗': 3, ...} 第二轮:{'苏亚雷斯': 2, 'C罗': 1, '格里丝曼':
-
使用Python获取字典键对应值的两种方法
目录 当知道字典的键时: 当不知道字典的键时: 附:字典dic最大值对应的键 总结 有两种方法 当知道字典的键时: unit_rooms={ 3:{301:[1,80],302:[1,80],303:[2,90],304:[2,90]}, 4:{401:[1,80],402:[1,80],403:[2,90],404:[2,90]}, 5:{501:[1,80],502:[1,80],503:[2,90],504:[2,90]} } for i in range(3,6): rooms=unit
-
Python交换字典键值对的四种方法实例
目录 前言 一.当值唯一时 1. 使用zip进行交换 2. 使用for循环遍历交换 3. 使用dict.items()交换 二.当值不唯一时 总结 前言 在学习过程中发现有时候交换字典的键和值,会使得我们最后的输出结果更加直观明了,整理出以下四种交换方式(data是原字典,new_data 是交换后的字典) 一.当值唯一时 1. 使用zip进行交换 data= {'A':1, 'B':2, 'C':3} new_data = dict(zip(data.values(), data.keys()
-
Python合并字典键值并去除重复元素的实例
假设在python中有一字典如下: x={'a':'1,2,3', 'b':'2,3,4'} 需要合并为: x={'c':'1,2,3,4'} 需要做到三件事: 1. 将字符串转化为数值列表 2. 合并两个列表并添加新的键值 3. 去除重复元素 第1步通过常用的函数eval()就可以做到了,第2步需要添加一个键值并添加元素,第3步利用set集合的性质可以达到去重的效果,不过最后需要再将set集合转化为list列表.代码如下: x={'a':'1,2,3','b':'2,3,4'} x['c']=
-
利用python修改json文件的value方法
做工程时遇到需要监听json文件,根据json文件中的key-value值作出相应处理的情形.为此写了修改json文件的python脚本供工程后续调用. 代码如下: # coding=utf-8 //设置文本格式 import os,sys import json def get_new_json(filepath,key,value): key_ = key.split(".") key_length = len(key_) with open(filepath, 'rb') as
-
Python将字典转换为XML的方法
问题 你想使用一个Python字典存储数据,并将它转换成XML格式. 解决方案 尽管 xml.etree.ElementTree 库通常用来做解析工作,其实它也可以创建XML文档. 例如,考虑如下这个函数: from xml.etree.ElementTree import Element def dict_to_xml(tag, d): ''' Turn a simple dict of key/value pairs into XML ''' elem = Element(tag) for
-
浅谈Python的字典键名可以是哪些类型
目录 1 键的类型,列表/字典不可以,其它都可以 2 多个对象可当作键名,顺序不同时是不同的键 3 结论[有误]: 今天看别人代码时发现一个事,就是把对象当作字典的键名,并且把两个对象(类的实例)当作键名,然后去查了下: 键必须是不可变的,如字符串,数字或元组. 1 键的类型,列表/字典不可以,其它都可以 但是网上却没有说其他类型可不可以,怎么用的.我写代码试了下: class Person: def __init__(self, name): self.name = name i = 5 s
-
Python实现字典去除重复的方法示例
本文实例讲述了Python实现字典去除重复的方法.分享给大家供大家参考,具体如下: #!/usr/bin/env python # encoding: utf-8 #字典去重小代码 import sys import os import platform try: pass except: print '''you have something wrong this is a simple jiaoben ''' sys.exit() why = 'why.txt' for i in xrang
随机推荐
- 在Python程序和Flask框架中使用SQLAlchemy的教程
- Rails应用程序中同时修改操作冲突问题的解决方案
- C++用new创建对象和不用new创建对象的区别解析
- js 设置缓存及获取设置的缓存
- JAVA实现简单停车场系统代码
- 根据mysql慢日志监控SQL语句执行效率
- 详谈JavaScript的闭包及应用
- JS中的数组转变成JSON格式字符串的方法
- ASP.NET用户控件如何使用
- C#线程队列用法实例分析
- MySQL不支持InnoDB的解决方法
- Python中super的用法实例
- jQuery插件FusionCharts绘制的3D环饼图效果示例【附demo源码】
- vbs base64 解密脚本代码
- windows7下安装PHP+nginx的方法
- 数据库 关键字一览表
- JS的递增/递减运算符和带操作的赋值运算符的等价式
- 简单实现限制uploadify上传个数
- iframe窗口高度自适应的实现方法
- 浅谈关于C#的垃圾回收机制