从列表中检索最大的负数和最小的正数

Retrieve largest negative number and smallest positive number from list

给定一个整数列表,例如:

lst = [-5, -1, -13, -11, 4, 8, 16, 32]

是否有一种 Python 式的方法来检索列表中最大的负数(例如 -1)和最小的正数(例如 4)?

您可以只使用列表解析:

>>> some_list = [-5, -1, -13, -11, 4, 8, 16, 32]
>>> max([n for n in some_list if n<0])
-1
>>> min([n for n in some_list  if n>0])
4