cython

Форк
0
/
or.pyx 
75 строк · 1.3 Кб
1
a,b = 'a *','b *' # use non-interned strings
2

3
def or2_assign(a,b):
4
    """
5
    >>> or2_assign(2,3) == (2 or 3)
6
    True
7
    >>> or2_assign('a', 'b') == ('a' or 'b')
8
    True
9
    >>> or2_assign(a, b) == (a or b)
10
    True
11
    """
12
    c = a or b
13
    return c
14

15
def or2(a,b):
16
    """
17
    >>> or2(2,3) == (2 or 3)
18
    True
19
    >>> or2(0,2) == (0 or 2)
20
    True
21
    >>> or2('a', 'b') == ('a' or 'b')
22
    True
23
    >>> or2(a, b) == (a or b)
24
    True
25
    >>> or2('', 'b') == ('' or 'b')
26
    True
27
    >>> or2([], [1]) == ([] or [1])
28
    True
29
    >>> or2([], [a]) == ([] or [a])
30
    True
31
    """
32
    return a or b
33

34
def or3(a,b,c):
35
    """
36
    >>> or3(0,1,2) == (0 or 1 or 2)
37
    True
38
    >>> or3([],(),[1]) == ([] or () or [1])
39
    True
40
    """
41
    d = a or b or c
42
    return d
43

44
def or2_no_result(a,b):
45
    """
46
    >>> or2_no_result(2,3)
47
    >>> or2_no_result(0,2)
48
    >>> or2_no_result('a','b')
49
    >>> or2_no_result(a,b)
50
    >>> a or b
51
    'a *'
52
    """
53
    a or b
54

55
def or2_literal():
56
    """
57
    >>> or2_literal()
58
    5
59
    """
60
    return False or 5
61

62
cdef class A(object):
63
    def __repr__(self):
64
        return "A"
65

66
def test_GH2059_missing_cast():
67
    """
68
    >>> test_GH2059_missing_cast()
69
    (A, A)
70
    """
71
    cdef A a = A()
72
    cdef object o = None
73
    cdef A a_first = a or o
74
    cdef A a_second = o or a
75
    return a_first, a_second
76

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

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

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

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