相关疑难解决方法(0)

如何从字典中弹出最右边(最低值)的项目?

所以,假设我有以下字典:

dic = {'a':3, 'b':2, 'c':1, 'd':1}
Run Code Online (Sandbox Code Playgroud)

所以我想pop(或任何其他方法,删除并返回),'d'因为它是最低的值和最右边的项目(如果2个键具有相同的值),值将始终是整数.

我试过了:

dic.popItem()
Run Code Online (Sandbox Code Playgroud)

但我只是随便拿回一个项目,任何想法?

还尝试过:

temp = min(dic.values)
del dic[temp]
Run Code Online (Sandbox Code Playgroud)

但同样,它不起作用!

python dictionary

0
推荐指数
1
解决办法
258
查看次数

查找值在数值上最高的字典键

给定dict形式的Python :

dict = {'Alice': 2341, 'Beth': 9102, 'Cecil': 3258, ......}
Run Code Online (Sandbox Code Playgroud)

有没有一种简单的方法来打印具有最高数值的前x个键?也就是说:

Beth   9102
Cecil  3258
Run Code Online (Sandbox Code Playgroud)

目前这是我的尝试:

max = 0
max_word = ""
for key, value in w.word_counts.iteritems():
    if value > max:
        if key not in stop_words:
            max = value
            max_word = key

print max_word
Run Code Online (Sandbox Code Playgroud)

python dictionary

0
推荐指数
2
解决办法
93
查看次数

字典按不正确的顺序排序

请参阅以下我的代码:

import operator
mydict = {'carl': 4,
          'alan': 2,
          'bob': 1,
          'danny': 3}

for i in sorted(mydict,key=operator.itemgetter(1),reverse=True):
    print ("%s: %d" % (i,mydict[i]))
Run Code Online (Sandbox Code Playgroud)

我有输出:

bob: 1
alan: 2
carl: 4
danny: 3
Run Code Online (Sandbox Code Playgroud)

我期待:

bob: 1
alan: 2
danny: 3
carl: 4
Run Code Online (Sandbox Code Playgroud)

这有什么不对?

python dictionary

-1
推荐指数
1
解决办法
60
查看次数

如何使用键作为决胜局按值对字典进行排序?

例如,如果我排序:

{3:4, 4:5, 5:5, 7:2}
Run Code Online (Sandbox Code Playgroud)

我期望:

{7:2, 3:4, 4:5, 5:5}
Run Code Online (Sandbox Code Playgroud)

注意:这不是其他“如何对字典排序”问题的重复,因为它们没有显示如何使用键作为决胜局。

有关的:

如何按值对字典进行排序?

Python 3 列表排序与决胜局

python sorting dictionary python-3.x

-1
推荐指数
1
解决办法
3779
查看次数

如何从条件中获取带有条件的排序列表?

所以我在(Python 3.x)中有这个字典:

dict = {
    "Gryffindor": gryffcount,
    "Ravenclaw": ravencount,
    "Hufflepuff": hufflecount,
    "Slytherin": slycount
}
Run Code Online (Sandbox Code Playgroud)

gryffcount,ravencount,hufflecountslycountint变量.

我想输出中的列表: - 第一个项目应是该值最高的关键 - 第二个应该是其值第二高的关键 - 等等...编辑:但是如果两个计数相等,那么字典中首先提到的那个应该首先出现.

所以如果gryffcount == 0,ravencount == 2,hufflecount == 0,slycount == 4

我应该得到这个清单:

["Slytherin","Ravenclaw","Gryffindor","Hufflepuff"]
Run Code Online (Sandbox Code Playgroud)

python python-3.x

-2
推荐指数
1
解决办法
56
查看次数

按值排序的字典键

我有这个:

{1: 'Foo', 2: 'Bar', 3: 'Chazz', 4: 'Alpha', 6: 'Zorn', 7: 'Doe'}

我想要一个dict中的键列表,按字母顺序按值排序:

[4,2,3,7,1,6]

什么是最简单,最pythonic的方法在2.7?

python

-3
推荐指数
2
解决办法
49
查看次数

标签 统计

python ×6

dictionary ×4

python-3.x ×2

sorting ×1