python - 查找列表中的最大元素
问题描述
我必须在列表中找到最大元素,同时过滤掉其中所有不是整数或浮点数的项目。到目前为止,我有这段代码,它似乎可以工作,除非给出 list [1, ]
。我收到一条错误消息,提示列表为空,我找不到最大元素。
def max_args(lst):
if len(lst) == 0:
return None
for item in lst:
if type(item) != [int or float]:
lst.remove(item)
return max(lst)
解决方案
简短的解决方案:
def max_args(arr):
return max([item for item in arr if isinstance(item, int) or isinstance(item, float)])
推荐阅读
- google-sheets - 在 Google 表格中使用多列数据进行匹配并返回值
- r - 将一列中的文本拆分为每行的多列
- laravel - 如何将一个类别重定向到子类别?
- oracle - 由于会话状态值导致的 Oracle Apex 性能问题
- hadoop - 如何调试 map-reduce 失败的地方?
- javascript - 如何遍历多个相似元素并依次更改每个元素的属性?
- optimization - 优化 Pywinauto
- python - 如何在 Python 中切换嵌套字典的值和键?
- sql - 日期字符串中使用的日期格式是什么,“2019-01-21T19:02:25Z”
- python - 尝试定义线程时对象没有属性