File: builtin_slice.pyx

package info (click to toggle)
cython 3.0.11%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 19,092 kB
  • sloc: python: 83,539; ansic: 18,831; cpp: 1,402; xml: 1,031; javascript: 511; makefile: 403; sh: 204; sed: 11
file content (74 lines) | stat: -rw-r--r-- 1,354 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# mode: run

def slice1(stop):
    """
    >>> list(range(8))
    [0, 1, 2, 3, 4, 5, 6, 7]
    >>> list(range(10))[slice1(8)]
    [0, 1, 2, 3, 4, 5, 6, 7]
    >>> slice1(1)
    slice(None, 1, None)
    >>> slice1(10)
    slice(None, 10, None)
    >>> slice1(None)
    slice(None, None, None)
    >>> slice1(1) == slice(1)
    True
    >>> slice1(None) == slice(None)
    True
    """
    return slice(stop)


def slice1_const():
    """
    >>> slice1_const() == slice(12)
    True
    """
    return slice(12)


def slice2(start, stop):
    """
    >>> list(range(2, 8))
    [2, 3, 4, 5, 6, 7]
    >>> list(range(10))[slice2(2, 8)]
    [2, 3, 4, 5, 6, 7]
    >>> slice2(1, 10)
    slice(1, 10, None)
    >>> slice2(None, 10)
    slice(None, 10, None)
    >>> slice2(4, None)
    slice(4, None, None)
    """
    return slice(start, stop)


def slice2_const():
    """
    >>> slice2_const() == slice(None, 12)
    True
    """
    return slice(None, 12)


def slice3(start, stop, step):
    """
    >>> list(range(2, 8, 3))
    [2, 5]
    >>> list(range(10))[slice3(2, 8, 3)]
    [2, 5]
    >>> slice3(2, None, 3)
    slice(2, None, 3)
    >>> slice3(None, 3, 2)
    slice(None, 3, 2)
    """
    return slice(start, stop, step)


def slice3_const():
    """
    >>> slice3_const() == slice(12, None, 34)
    True
    """
    return slice(12, None, 34)