summaryrefslogtreecommitdiffstatshomepage
path: root/tests/basics/int1.py
blob: 94723af4d00b47e976fb074b1518807a43787138 (plain) (blame)
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
print(int(False))
print(int(True))

print(int(0))
print(int(1))
print(int(+1))
print(int(-1))

print(int('0'))
print(int('+0'))
print(int('-0'))
print(int('1'))
print(int('+1'))
print(int('-1'))
print(int('01'))
print(int('00'))
print(int('9'))
print(int('10'))
print(int('+10'))
print(int('-10'))
print(int('12'))
print(int('-12'))
print(int('99'))
print(int('100'))
print(int('314'))
print(int(' 314'))
print(int('314 '))
print(int('  \t\t  314  \t\t  '))
print(int('  1  '))
print(int(' -3 '))

print(int('0', 10))
print(int('1', 10))
print(int(' \t 1 \t ', 10))
print(int(' \t 00 \t ', 10))
print(int('11', 10))
print(int('11', 16))
print(int('11', 8))
print(int('11', 2))
print(int('11', 36))
print(int('xyz', 36))
print(int('0o123', 0))
print(int('8388607'))
print(int('0x123', 16))
print(int('0X123', 16))
print(int('0A', 16))
print(int('0o123', 8))
print(int('0O123', 8))
print(int('0123', 8))
print(int('0b100', 2))
print(int('0B100', 2))
print(int('0100', 2))
print(int(' \t 0o12', 8))
print(int('0o12  \t  ', 8))
print(int(b"12", 10))
print(int(b"12"))
print(int('000 ', 0))
print(int('000 ', 2))
print(int('000 ', 8))
print(int('000 ', 10))
print(int('000 ', 16))
print(int('000 ', 36))
print(int('010 ', 2))
print(int('010 ', 8))
print(int('010 ', 10))
print(int('010 ', 16))
print(int('010 ', 36))


def test(value, base):
    try:
        print(int(value, base))
    except ValueError:
        print('ValueError')


test('x', 0)
test('1x', 0)
test('  1x', 0)
test('  1' + chr(2) + '  ', 0)
test('', 0)
test(' ', 0)
test('  \t\t  ', 0)
test('0x', 16)
test('0x', 0)
test('0o', 8)
test('0o', 0)
test('0b', 2)
test('0b', 0)
test('0b2', 2)
test('0o8', 8)
test('0xg', 16)
test('1 1', 16)
test('123', 37)
test('01', 0)
test('01 ', 0)

# check that we don't parse this as a floating point number
print(0x1e+1)

# can't convert list to int
try:
    int([])
except TypeError:
    print("TypeError")