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
# -*- coding: utf-8 -*-
__doc__ = r"""
>>> sa
'abc'
>>> ua
u'abc'
>>> b
u'123'
>>> c
u'S\xf8k ik'
>>> d
u'\xfc\xd6\xe4'
>>> e
u'\x03g\xf8\uf8d2S\xf8k ik'
>>> f
u'\xf8'
>>> add
u'S\xf8k ik\xfc\xd6\xe4abc'
>>> null
u'\x00'
""" + """
>>> len(sa)
3
>>> len(ua)
3
>>> len(b)
3
>>> len(c)
6
>>> len(d)
3
>>> len(e)
10
>>> len(f)
1
>>> len(add)
12
>>> len(null)
1
""" + u"""
>>> sa == 'abc'
True
>>> ua == u'abc'
True
>>> b == u'123'
True
>>> c == u'Søk ik'
True
>>> d == u'üÖä'
True
>>> e == u'\x03\x67\xf8\uf8d2Søk ik' # unescaped by Cython
True
>>> e == u'\\x03\\x67\\xf8\\uf8d2Søk ik' # unescaped by Python
True
>>> f == u'\xf8' # unescaped by Cython
True
>>> f == u'\\xf8' # unescaped by Python
True
>>> add == u'Søk ik' + u'üÖä' + 'abc'
True
>>> null == u'\\x00' # unescaped by Python (required by doctest)
True
"""
sa = 'abc'
ua = u'abc'
b = u'123'
c = u'Søk ik'
d = u'üÖä'
e = u'\x03\x67\xf8\uf8d2Søk ik'
f = u'\xf8'
add = u'Søk ik' + u'üÖä' + 'abc'
null = u'\x00'