Changed func type from str to Callable

This commit is contained in:
2021-07-26 15:32:28 +02:00
parent 0cae3428b9
commit b7be439381
5 changed files with 32 additions and 26 deletions

View File

@@ -1,7 +1,9 @@
from collections import Callable
from cpl_query._query.where_query import where_query
from cpl_query.extension.iterable_abc import IterableABC
def any_query(_list: IterableABC, _func: str) -> bool:
def any_query(_list: IterableABC, _func: Callable) -> bool:
result = where_query(_list, _func)
return len(result) > 0

View File

@@ -1,13 +1,17 @@
from collections import Callable
from cpl_query.extension.iterable_abc import IterableABC
def where_query(_list: IterableABC, _func: str) -> IterableABC:
def where_query(_list: IterableABC, _func: Callable) -> IterableABC:
result = IterableABC()
for element in _list:
element_type = type(element).__name__
if element_type in _func:
func = _func.replace(element_type, 'element')
if eval(func):
result.append(element)
if _func(element):
result.append(element)
# if element_type in _func:
# func = _func.replace(element_type, 'element')
# if eval(func):
# result.append(element)
return result