Seq Helpers¶
-
basic_utils.seq_helpers.
first
(seq)[source]¶ Returns first element in a sequence.
>>> first([1, 2, 3]) 1
Return type: Any
-
basic_utils.seq_helpers.
last
(seq)[source]¶ Returns the last item in a Sequence
>>> last([1, 2, 3]) 3
Return type: Any
-
basic_utils.seq_helpers.
butlast
(seq)[source]¶ Returns all but the last item in sequence
>>> butlast([1, 2, 3]) [1, 2]
Return type: Sequence
[+T_co]
-
basic_utils.seq_helpers.
rest
(seq)[source]¶ Returns remaining elements in a sequence
>>> rest([1, 2, 3]) [2, 3]
Return type: Any
-
basic_utils.seq_helpers.
reverse
(seq)[source]¶ Returns sequence in reverse order
>>> reverse([1, 2, 3]) [3, 2, 1]
Return type: Sequence
[+T_co]
-
basic_utils.seq_helpers.
cons
(item, seq)[source]¶ Adds item to beginning of sequence.
>>> list(cons(1, [2, 3])) [1, 2, 3]
Return type: chain
-
basic_utils.seq_helpers.
flatten
(seq)[source]¶ Returns a flatten version of sequence.
>>> flatten([1, [2, [3, [4, 5], 6], 7]]) [1, 2, 3, 4, 5, 6, 7]
Return type: Iterable
[+T_co]
-
basic_utils.seq_helpers.
partial_flatten
(seq)[source]¶ Returns partially flattened version of sequence.
>>> partial_flatten(((1,), [2, 3], (4, [5, 6]))) (1, 2, 3, 4, [5, 6])
Return type: Iterable
[+T_co]
-
basic_utils.seq_helpers.
sorted_index
(seq, item, key=None)[source]¶ >>> sorted_index([10, 20, 30, 40, 50], 35) 3
Return type: int
-
basic_utils.seq_helpers.
dedupe
(seq, key=None)[source]¶ Removes duplicates from a sequence while maintaining order
>>> dedupe([1, 5, 2, 1, 9, 1, 5, 10]) [1, 5, 2, 9, 10]
Return type: Iterable
[+T_co]
-
basic_utils.seq_helpers.
concat
(seqX, seqY)[source]¶ Joins two sequences together, returning a single combined sequence. Preserves the type of passed arguments.
>>> concat((1, 2, 3), (4, 5, 6)) (1, 2, 3, 4, 5, 6)
Return type: Sequence
[+T_co]
-
basic_utils.seq_helpers.
take
(n, iterable)[source]¶ Return first n items of the iterable as a list.
>>> take(2, range(1, 10)) [1, 2]
Return type: Iterable
[+T_co]
-
basic_utils.seq_helpers.
nth
(iterable, n, default=None)[source]¶ Returns the nth item or a default value.
>>> nth([1, 2, 3], 1) 2
Return type: Any
-
basic_utils.seq_helpers.
all_equal
(iterable)[source]¶ Returns True if all the elements are equal to each other.
>>> all_equal([True, True]) True
Return type: bool
-
basic_utils.seq_helpers.
quantify
(iterable, pred=<class 'bool'>)[source]¶ Returns count of how many times the predicate is true.
>>> quantify([True, False, True]) 2
Return type: int
-
basic_utils.seq_helpers.
head
(seq)¶ Returns first element in a sequence.
>>> first([1, 2, 3]) 1
Return type: Any
-
basic_utils.seq_helpers.
tail
(seq)¶ Returns remaining elements in a sequence
>>> rest([1, 2, 3]) [2, 3]
Return type: Any
-
basic_utils.seq_helpers.
init
(seq)¶ Returns all but the last item in sequence
>>> butlast([1, 2, 3]) [1, 2]
Return type: Sequence
[+T_co]