Formatted code
This commit is contained in:
@@ -2,7 +2,12 @@ from typing import Optional, Callable, Union, Iterable
|
||||
|
||||
from cpl_query._helper import is_number
|
||||
from cpl_query.base.sequence import Sequence
|
||||
from cpl_query.exceptions import InvalidTypeException, ArgumentNoneException, ExceptionArgument, IndexOutOfRangeException
|
||||
from cpl_query.exceptions import (
|
||||
InvalidTypeException,
|
||||
ArgumentNoneException,
|
||||
ExceptionArgument,
|
||||
IndexOutOfRangeException,
|
||||
)
|
||||
|
||||
|
||||
def _default_lambda(x: object) -> object:
|
||||
@@ -10,7 +15,6 @@ def _default_lambda(x: object) -> object:
|
||||
|
||||
|
||||
class QueryableABC(Sequence):
|
||||
|
||||
def __init__(self, t: type, values: Iterable = None):
|
||||
Sequence.__init__(self, t, values)
|
||||
|
||||
@@ -99,7 +103,7 @@ class QueryableABC(Sequence):
|
||||
|
||||
return self.where(_func).count()
|
||||
|
||||
def distinct(self, _func: Callable = None) -> 'QueryableABC':
|
||||
def distinct(self, _func: Callable = None) -> "QueryableABC":
|
||||
r"""Returns list without redundancies
|
||||
|
||||
Parameter
|
||||
@@ -208,7 +212,7 @@ class QueryableABC(Sequence):
|
||||
|
||||
return self
|
||||
|
||||
def group_by(self, _func: Callable = None) -> 'QueryableABC':
|
||||
def group_by(self, _func: Callable = None) -> "QueryableABC":
|
||||
r"""Groups by func
|
||||
|
||||
Returns
|
||||
@@ -289,11 +293,7 @@ class QueryableABC(Sequence):
|
||||
result = self.order_by(_func).select(_func).to_list()
|
||||
length = len(result)
|
||||
i = int(length / 2)
|
||||
return (
|
||||
result[i]
|
||||
if length % 2 == 1
|
||||
else (float(result[i - 1]) + float(result[i])) / float(2)
|
||||
)
|
||||
return result[i] if length % 2 == 1 else (float(result[i - 1]) + float(result[i])) / float(2)
|
||||
|
||||
def min(self, _func: Callable = None) -> object:
|
||||
r"""Returns the lowest value
|
||||
@@ -315,7 +315,7 @@ class QueryableABC(Sequence):
|
||||
|
||||
return _func(min(self, key=_func))
|
||||
|
||||
def order_by(self, _func: Callable = None) -> 'OrderedQueryableABC':
|
||||
def order_by(self, _func: Callable = None) -> "OrderedQueryableABC":
|
||||
r"""Sorts elements by function in ascending order
|
||||
|
||||
Parameter
|
||||
@@ -331,9 +331,10 @@ class QueryableABC(Sequence):
|
||||
_func = _default_lambda
|
||||
|
||||
from cpl_query.base.ordered_queryable import OrderedQueryable
|
||||
|
||||
return OrderedQueryable(self.type, sorted(self, key=_func), _func)
|
||||
|
||||
def order_by_descending(self, _func: Callable = None) -> 'OrderedQueryableABC':
|
||||
def order_by_descending(self, _func: Callable = None) -> "OrderedQueryableABC":
|
||||
r"""Sorts elements by function in descending order
|
||||
|
||||
Parameter
|
||||
@@ -349,9 +350,10 @@ class QueryableABC(Sequence):
|
||||
_func = _default_lambda
|
||||
|
||||
from cpl_query.base.ordered_queryable import OrderedQueryable
|
||||
|
||||
return OrderedQueryable(self.type, sorted(self, key=_func, reverse=True), _func)
|
||||
|
||||
def reverse(self) -> 'QueryableABC':
|
||||
def reverse(self) -> "QueryableABC":
|
||||
r"""Reverses list
|
||||
|
||||
Returns
|
||||
@@ -360,7 +362,7 @@ class QueryableABC(Sequence):
|
||||
"""
|
||||
return type(self)(self._type, reversed(self._values))
|
||||
|
||||
def select(self, _func: Callable) -> 'QueryableABC':
|
||||
def select(self, _func: Callable) -> "QueryableABC":
|
||||
r"""Formats each element of list to a given format
|
||||
|
||||
Returns
|
||||
@@ -372,7 +374,7 @@ class QueryableABC(Sequence):
|
||||
|
||||
return type(self)(object, [_func(_o) for _o in self])
|
||||
|
||||
def select_many(self, _func: Callable) -> 'QueryableABC':
|
||||
def select_many(self, _func: Callable) -> "QueryableABC":
|
||||
r"""Flattens resulting lists to one
|
||||
|
||||
Returns
|
||||
@@ -396,9 +398,9 @@ class QueryableABC(Sequence):
|
||||
Exception: when argument is None or found more than one element
|
||||
"""
|
||||
if self.count() > 1:
|
||||
raise Exception('Found more than one element')
|
||||
raise Exception("Found more than one element")
|
||||
elif self.count() == 0:
|
||||
raise Exception('Found no element')
|
||||
raise Exception("Found no element")
|
||||
|
||||
return self._values[0]
|
||||
|
||||
@@ -410,13 +412,13 @@ class QueryableABC(Sequence):
|
||||
Found value: Optional[any]
|
||||
"""
|
||||
if self.count() > 1:
|
||||
raise Exception('Index out of range')
|
||||
raise Exception("Index out of range")
|
||||
elif self.count() == 0:
|
||||
return None
|
||||
|
||||
return self._values[0]
|
||||
|
||||
def skip(self, _index: int) -> 'QueryableABC':
|
||||
def skip(self, _index: int) -> "QueryableABC":
|
||||
r"""Skips all elements from index
|
||||
|
||||
Parameter
|
||||
@@ -433,7 +435,7 @@ class QueryableABC(Sequence):
|
||||
|
||||
return type(self)(self.type, self._values[_index:])
|
||||
|
||||
def skip_last(self, _index: int) -> 'QueryableABC':
|
||||
def skip_last(self, _index: int) -> "QueryableABC":
|
||||
r"""Skips all elements after index
|
||||
|
||||
Parameter
|
||||
@@ -475,7 +477,7 @@ class QueryableABC(Sequence):
|
||||
|
||||
return result
|
||||
|
||||
def split(self, _func: Callable) -> 'QueryableABC':
|
||||
def split(self, _func: Callable) -> "QueryableABC":
|
||||
r"""Splits the list by given function
|
||||
|
||||
|
||||
@@ -508,7 +510,7 @@ class QueryableABC(Sequence):
|
||||
|
||||
return type(self)(self._type, query_groups)
|
||||
|
||||
def take(self, _index: int) -> 'QueryableABC':
|
||||
def take(self, _index: int) -> "QueryableABC":
|
||||
r"""Takes all elements from index
|
||||
|
||||
Parameter
|
||||
@@ -525,7 +527,7 @@ class QueryableABC(Sequence):
|
||||
|
||||
return type(self)(self._type, self._values[:_index])
|
||||
|
||||
def take_last(self, _index: int) -> 'QueryableABC':
|
||||
def take_last(self, _index: int) -> "QueryableABC":
|
||||
r"""Takes all elements after index
|
||||
|
||||
Parameter
|
||||
@@ -544,7 +546,7 @@ class QueryableABC(Sequence):
|
||||
|
||||
return type(self)(self._type, self._values[index:])
|
||||
|
||||
def where(self, _func: Callable = None) -> 'QueryableABC':
|
||||
def where(self, _func: Callable = None) -> "QueryableABC":
|
||||
r"""Select element by function
|
||||
|
||||
Parameter
|
||||
|
Reference in New Issue
Block a user