Add recipe for subslices (GH-31095)

This commit is contained in:
Raymond Hettinger 2022-02-03 02:12:08 -06:00 committed by GitHub
parent f5ebec4d3e
commit a77de58108
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -893,6 +893,12 @@ which incur interpreter overhead.
yield from it
return true_iterator(), remainder_iterator()
def subslices(seq):
"Return all contiguous non-empty subslices of a sequence"
# subslices('ABCD') --> A AB ABC ABCD B BC BCD C CD D
slices = starmap(slice, combinations(range(len(seq) + 1), 2))
return map(operator.getitem, repeat(seq), slices)
def powerset(iterable):
"powerset([1,2,3]) --> () (1,) (2,) (3,) (1,2) (1,3) (2,3) (1,2,3)"
s = list(iterable)