【问题标题】:New to python, help please with reading this linespython新手,请帮助阅读此行
【发布时间】:2021-12-01 06:35:16
【问题描述】:
square = {2: 4, -3: 9, -1: 1, -2: 4}
key1 = max(square)
print(key1) # 2
key2 = max(square, key = lambda k: square[k])
print(key2) # -3
key3 = square[key2]
print(key3) # 9

Q1:对不起,如果这个问题似乎无关紧要,但是 square[k] 是如何工作的,每次删除 K 时我都无法得到它背后的逻辑,答案与 key1 相同 Q2:逻辑如何与 key3 一起使用导致 9

提前谢谢你!!!

【问题讨论】:

  • 第一个max会返回最大的keymaxlambda会返回最大关联value的key >.
  • square[k] 是如何工作的,key3 是如何产生 9 的。非常感谢!

标签: python python-3.x dictionary arguments


【解决方案1】:

max 的第二个参数是一个排序函数,用于提取要排序的值。因此,max(square, key = lambda k: square[k]) 返回 square 中对应值最大的键。

【讨论】:

  • 谢谢,key3 基本上是在调用值为 9 的键,但是 key2 中的 square[k] 是如何工作的
  • @NewCoder square[k]获取square中键k的值。
  • @NewCoder 而key2 是获得最大价值的关键。
  • 谢谢!如果问题有点明显,对不起。我现在的信息真的超负荷了!
  • @NewCoder 乐于助人。
【解决方案2】:

在本例中,k 指的是字典 square 中的键。

字典由键:值对组成,您可以在第一行的 square 声明中看到。

如果我们想要字典中的特定值,我们需要引用它的键。因此,如果我们想从字典中打印 4,我们需要输入键 2

所以下面的代码会打印'4':

square = {2: 4, -3: 9, -1: 1, -2: 4}
k = 2
print(square[k])

【讨论】:

  • 谢谢!我现在有点明白逻辑了。我要做一些测试自己。
猜你喜欢
  • 2015-05-26
  • 2021-11-04
  • 2020-04-25
  • 1970-01-01
  • 1970-01-01
  • 2022-12-01
  • 1970-01-01
  • 2015-09-24
  • 1970-01-01
相关资源
最近更新 更多