相关疑难解决方法(0)

为什么dict.get(key)而不是dict [key]?

今天,我遇到了这个dict方法get,它给出了字典中的一个键,返回了相关的值.

这个功能用于什么目的?如果我想找到与字典中的键相关联的值,我可以这样做dict[key],它返回相同的东西:

dictionary = {"Name": "Harry", "Age": 17}
dictionary["Name"]
dictionary.get("Name")
Run Code Online (Sandbox Code Playgroud)

python dictionary

553
推荐指数
11
解决办法
46万
查看次数

什么时候应该使用iteritems()而不是items()?

是否合法使用items()而不是iteritems()在所有地方使用?为什么iteritems()从Python 3 中删除?看起来像一个了不起的有用的方法.背后的原因是什么?

编辑:为了澄清,我想知道以类似生成器的方式迭代字典的正确习惯用法(一次一个项目,而不是全部到内存中)以与Python 2和Python 3兼容的方式进行迭代?

python python-3.x

143
推荐指数
7
解决办法
20万
查看次数

Python:获取字典中值最小但具有多个最小值的键

我正在尝试执行与获取与字典中的最小值对应的键相同的操作 ,其中我们希望获得与字典中的最小值对应的键.

最好的方式似乎是:

min(d, key=d.get)
Run Code Online (Sandbox Code Playgroud)

但是我想在具有多个最小值的字典上应用它:

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

请注意,上面的答案是:

>>> min(d, key=d.get)
'a'
Run Code Online (Sandbox Code Playgroud)

但是,我需要两个具有最小值的键,即ac.

什么是最好的方法?

(最终我想随机选择其中一个,但我不认为这是相关的).

python dictionary multiple-instances minimum

14
推荐指数
1
解决办法
1万
查看次数

如何在字典中返回最小值?

假设我有一份水果总词典:

Fruits = {"apple":8, "banana":3, "lemon":5, "pineapple":2,}
Run Code Online (Sandbox Code Playgroud)

我想要输出

["pineapple"]
Run Code Online (Sandbox Code Playgroud)

因为菠萝价值最低.或者,如果我有这个:

Colour = {"blue":5, "green":2, "purple":6, "red":2}
Run Code Online (Sandbox Code Playgroud)

输出将是:

["green","red"]
Run Code Online (Sandbox Code Playgroud)

因为绿色和红色都具有最小的价值.

那么如何在字典中返回最小值?

python dictionary

6
推荐指数
1
解决办法
3万
查看次数

在 Python 中为字典实现 argmin

以前可能有人问过这个问题,但是有人知道在 Python 中实现 argmin 的优雅方法吗?也就是说,给定一个将整数映射到整数的字典 D,我想找到键 k 使得 D[k] 最小化。

例如:

d = {1: 100, 2:200}
argmin(d) = 1
Run Code Online (Sandbox Code Playgroud)

python dictionary function

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

返回最小值的键

我想dictionary在 Python 中返回 a中最小值的键。key, value 对的值会有几个数字,即dict[current] = (total, gone, heuristic). 如何返回最小消失值的键?

python dictionary

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

如何有效地找到列表中的赔率?

说我有一个像

>>> l = [-10,-10,-10,-20,-10,-10]
Run Code Online (Sandbox Code Playgroud)

鉴于您不知道它是 -20,我想-20在一行或两行中找到位置和数量。有什么想法吗?

python list

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

Python:迭代字典的子集

我想迭代一个字典的子集来找到子集中的最小值.我可以使用生成器表达式来获取值:

>>> S = {'a', 'c'}
>>> D = {'a': 2, 'b': 0, 'c': 1, 'd': 3}
>>> min(D[k] for k in S)
1
Run Code Online (Sandbox Code Playgroud)

要获得相关的密钥,我想这是可能的:

>>> subset_min = min(D[k] for k in S)
>>> [k for k, v in D.iteritems() if v == subset_min]
['c']
Run Code Online (Sandbox Code Playgroud)

但肯定有一种方法不需要再次搜索字典?我希望像这里min(D, key=D.get)讨论的那样,但在这种情况下我无法看到如何应用它.

python dictionary iterator generator

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

在字典中查找最小值

假设我们有一个 Python 字典,用于存储与卷号相关的成绩。字典 = {1:90,2:40,3:98}。如果我们使用 min(dict) 那么输出将为 1。我们如何找到组中最少的分数(在本例中为 40)。我们还能找到返回值的索引吗?

python-3.x

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