You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中获取可迭代对象中值最高的元素对应的变量名

Python实现方案

我们可以借助Python内置的inspect模块解析调用上下文获取变量名,再比对数值大小返回结果,具体实现如下:

import inspect

def pick_highest(*args):
    # 获取调用当前函数的栈帧信息
    call_frame = inspect.currentframe().f_back
    # 提取调用语句的原始代码
    call_code = inspect.getframeinfo(call_frame).code_context[0].strip()
    # 解析得到传入的所有变量名
    args_str = call_code[call_code.find('(')+1 : call_code.rfind(')')]
    var_names = [item.strip() for item in args_str.split(',')]
    # 配对变量名和对应值,返回值最大的变量名
    return max(zip(var_names, args), key=lambda item: item[1])[0]

测试运行代码:

variable1 = 1000
variable2 = 242
variable3 = 87509
highest_number = pick_highest(variable1, variable2, variable3)
print(highest_number)

运行输出:

variable3

注意事项

  • 调用pick_highest时请直接传入变量名,不要在参数位置嵌套其他运算表达式,否则会导致变量名解析错误
  • 若存在多个变量数值相同且均为最大值,会返回参数列表中第一个出现的对应变量名

内容的提问来源于stack exchange,提问作者UNKNOWN

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 21:54:03