pythonkey
㈠ 关于python 的 key in dict 问题
试了一下很麻烦
但是你将adict的值在进行str转换之前保存一份不就行了吗
以下代码可以实现:
def dic():
i=0
adict=
stra = str(adict)
stra[1:len(stra)-1]
s = stra[1:len(stra)-1]
for key in s:
if key != ":":
i=i+1
else:
ret1 = key[0:i]
if key != "]":
i=i+1
else:
ret2 = key[len(ret1):i]
adict.update([(ret1,ret2)])
adict.pop(":")
print adict
很高兴回答楼主的问题 如有错误请见谅
㈡ python 字典是否有key
第一种方法:使用自带函数实现。
在python的字典的属性方法里面有一个has_key()方法,这个方法使用起来非常简单。
例:
#生成一个字典d = {'name':{},'age':{},'sex':{}}#打印返回值print d.has_key('name')#结果返回True
第二种方法:使用in方法
#生成一个字典d = {'name':{},'age':{},'sex':{}}#打印返回值,其中d.keys()是列出字典所有的keyprint name in d.keys()#结果返回True
上面两种方式,我更推荐使用第二种,因为has_key()是python2.2之前的方法,而且使用in的方法会更快一些。
最后告诉大家一点:除了使用in还可以使用not in,判定这个key不存在哦~
㈢ python数据字典里的key是不是整数
字典没有下标的概念了,是使用key进行索引, 把代码改成这样就可以了: for key in record.keys(): record[key] += 1
㈣ python里 key=lambda d:d[0]是什么意思谢谢
第一行代码是把一个字典绑定到一个名字(变量)上。
第二行代码是先将字典通过调用items()方法转换成(键、值)元组列表,再用sorted函数通过key=匿名函数指定(键、值)中的值为关键字进行排序。(在此例中,lambda d:d[1]是以(键、值)中的值为关键字进行排序,你的问题标题中说到是的key=lambda d:d[0]是以(键、值)中的键为关键字进行排序)。
㈤ python 字典key是列表,转成字典
#!/usr/bin/envpython2
#coding=utf-8
"""
convertsomedataformat
"""
deflist_to_dict(rating):
return{'uid':rating[0],
'movieid':rating[1],
'rating':rating[2],
'time':rating[3]}
defconvert_train(train):
fork,ratingsintrain.iteritems():
train[k]=[list_to_dict(rating)forratinginratings]
returntrain
defmain():
r=convert_train({'uid1':[['uid1','movieid1','rating1','time1'],
['uid1','movieid2','rating2','time2'],
['uid1','movieid3','rating3','time3']]})
printr
if__name__=='__main__':
main()
㈥ python字典key可以是数值吗
这个是Python官方的中文教程 有最新的3.4.3版本的 也可以选择中英对照 基本的东西都讲述的差不多了 如果想了解更多库或模块 知乎上大神很多 随便找一找都能找到很多有用的建议 但是建议不要初期就看过多虚的比较和互撕神马的 官方的IDLE用好了之...
㈦ python中d.get(key)是什么意思是获取key的对应值
d应该是python的字典类型key-value,d.get(key)就是获取key对应的value
㈧ Python中如何以dict的key排序输出
#输出的顺序却不是我们预想的那样初始化的顺序,查询相关文献得知,Python保证遍##历字典所有元素,但不保证遍历的顺序,假如我们期望按预先的顺序进行遍历的话,#我目前找到一个办法,就是通过两个List分别存储Key和Value,然后通过zip合并为Dic#tionary,再遍历:
#通过zip方法合并两个List为Dictionary
#遍历会按原先的顺序
keys=["b","a","c","e","d"]
values=["2","1","3","5","4"]
forkey,valueinzip(keys,values):
print(key,value)
#--OUTPUT--
#b2
#a1
#c3
#e5
#d4
㈨ python字典如何根据key比较value
1.sorted函数
首先介绍sorted函数,sorted(iterable,key,reverse),sorted一共有iterable,key,reverse这三个参数。
其中iterable表示可以迭代的对象,例如可以是dict.items()、dict.keys()等,key是一个函数,用来选取参与比较的元素,reverse则是用来指定排序是倒序还是顺序,reverse=true则是倒序(从大到小),reverse=false则是顺序(从小到大),默认是reverse=false。
2.按照key排序
要对字典按照key排序,可以直接调用sorted函数。
my_dict = {'lilee':25, 'age':24, 'phone':12}
sorted(my_dict.keys())
输出结果为
['age', 'lilee', 'phone']
直接使用sorted(my_dict.keys())就能按key值对字典排序,这里是按照顺序对key值进行排序的,如果想按照倒序排序的话,只需要将reverse置为true即可。
sorted(my_dcit.keys(), reverse = true)
3.按照value值排序
共有三种方法可以实现将字典按照value值进行排序
(1)key使用lambda匿名函数取value进行排序
d = {'lilee':25, 'wangyan':21, 'liqun':32, 'age':19}
sorted(d.items(), key=lambda item:item[1])
输出结果为
[('age',19),('wangyan',21),('lilee',25),('liqun',32)]
如果需要倒序则
sorted(d.items(), key=lambda item:item[1], reverse=True)
得到的结果就会是
[('liqun',32),('lilee',25),('wangyan',21),('age',19)](2)使用operator的itemgetter进行排序
import operator
sorted(d.items(), key=operator.itemgetter(1))
输出结果为
[('age',19),('wangyan',21),('lilee',25),('liqun',32)]
(3)将key和value分装成元组,再进行排序
f = zip(d.keys(), d.values())
c = sorted(f)
输出结果为
[('age',19),('wangyan',21),('lilee',25),('liqun',32)]
4.取出排序的前n个value值和key值
可以按照如下操作:
before = {"key1": 5,"key2": 6,"key3": 4,"key4": 3,
}# 排序after = dict(sorted(before.items(), key=lambda e: e[1]))print(after)
# 取出前几个, 也可以在sorted返回的list中取前几个
required_cnt = 2cnt = 0
for key, value in after.items():
cnt += 1if cnt > required_cnt:breakprint("{}:{}".format(key, value))
㈩ 一直不明白python字典的key是怎么回事
python字典其实就是python的键值对集合。键也就是key,相当于一个标签,举个通俗易懂的例子,字典相当于顺风快递的仓库,每一个键值对相当于一个包裹,key就是包裹上的地址,可以让你方便地找到包裹,值即value,就是包裹里面的东西。
希望可以帮助你