cython

Форк
0
/
argdefault.pyx 
109 строк · 1.5 Кб
1
GLB0 = (1, 2)
2
def f0(arg=GLB0):
3
    """
4
    >>> f0()
5
    (1, 2)
6
    """
7
    return arg
8
def g0(arg=(1, 2)):
9
    """
10
    >>> g0()
11
    (1, 2)
12
    """
13
    return arg
14

15

16
GLB1 = [1, 2]
17
def f1(arg=GLB1):
18
    """
19
    >>> f1()
20
    [1, 2]
21
    """
22
    return arg
23
def g1(arg=[1, 2]):
24
    """
25
    >>> g1()
26
    [1, 2]
27
    """
28
    return arg
29

30

31
cdef GLB2 = {1: 2}
32
def f2(arg=GLB2):
33
    """
34
    >>> f2()
35
    {1: 2}
36
    """
37
    return arg
38
def g2(arg={1: 2}):
39
    """
40
    >>> g2()
41
    {1: 2}
42
    """
43
    return arg
44

45

46
class Foo(object):
47
    pass
48
cdef GLB3 = Foo()
49
def f3(arg=GLB3):
50
    """
51
    >>> f3() #doctest: +ELLIPSIS
52
    <argdefault.Foo object at ...>
53
    """
54
    return arg
55
def g3(arg=Foo()):
56
    """
57
    >>> g3() #doctest: +ELLIPSIS
58
    <argdefault.Foo object at ...>
59
    """
60
    return arg
61

62

63
cdef class Bar:
64
    pass
65
cdef Bar GLB4 = Bar()
66
def f4(arg=GLB4):
67
    """
68
    >>> f4() #doctest: +ELLIPSIS
69
    <argdefault.Bar object at ...>
70
    """
71
    return arg
72
def g4(arg=Bar()):
73
    """
74
    >>> g4() #doctest: +ELLIPSIS
75
    <argdefault.Bar object at ...>
76
    """
77
    return arg
78

79

80
cdef class Bla:
81
    pass
82
cdef Bla GLB5 = Bla()
83
def f5(Bla arg=GLB5):
84
    """
85
    >>> f5() #doctest: +ELLIPSIS
86
    <argdefault.Bla object at ...>
87
    """
88
    return arg
89
def g5(Bla arg=Bla()):
90
    """
91
    >>> g5() #doctest: +ELLIPSIS
92
    <argdefault.Bla object at ...>
93
    """
94
    return arg
95

96

97
cdef int GLB6 = 7
98
def f6(int arg=GLB6):
99
    """
100
    >>> f6()
101
    7
102
    """
103
    return arg
104
def g6(int arg=7):
105
    """
106
    >>> g6()
107
    7
108
    """
109
    return arg
110

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.