python - 如何打印列表中的最大数字,该列表旁边还有其他元素在同一字符串中
问题描述
我正在尝试编写一个包含对象列表的代码,并且在对象旁边还有一个数字。我想打印旁边有最大数字的对象。一个想法是使用 查找字符串中的最后一个值[-1]
,但是我很快意识到,如果数字超过 1 位,这将不起作用。我也写了这段代码,但是这只是返回列表中的最后一个元素。
list_of_words = ["car 1", "telephone 3", "bottle 10", "laptop 8", "window 12", "headphones 5"]
def autocomplete_freq_words():
for word in list_of_words:
return max(list_of_words)
print(autocomplete_freq_words())
基本上,对于 list_of_words,我想打印单词“window”。
解决方案
您可以使用rsplit(maxsplit=1)
空格分割并从每个列表元素中选择最后一个元素作为比较键。
print(
max(list_of_words, key=lambda x: int(x.rsplit(maxsplit=1)[-1]))
)
输出:
window 12
推荐阅读
- python - 使用 python SVM/R 进行股票分析以预测未来价值。运行代码时的问题
- groovy - JMeter - WebDriver Sampler - Google Map 自动填充名称
- python - 在linux下的apt中找到python模块pynput
- java - 具有xml类型值的字符串,我如何获取键来更新缺失值?
- erlang - 通过匹配 erlang 中的键来创建和访问记录的值
- microsoft-teams - 使用 teamlogon.aspx 重定向服务编码错误
- c++ - 如何为另一个构造函数调用的构造函数提供参数?
- sql - 如何根据时间间隔对这个 sql 查询进行分组?
- python - 如何使用 pandas 检查一个值是否在 1 个或 2 个列表列中
- python - 用 Python Sympy 求解方程组