bytes_abc = b'abc'
bytes_ABC = b'ABC'
+bytes_abc_null = b'a\0b\0c'
+bytes_ABC_null = b'A\0B\0C'
unicode_abc = u'abc'
unicode_ABC = u'ABC'
+unicode_abc_null = u'a\0b\0c'
+unicode_ABC_null = u'A\0B\0C'
def for_in_bytes(bytes s):
'X'
>>> for_in_bytes(bytes_ABC)
'C'
+ >>> for_in_bytes(bytes_abc_null)
+ 'X'
+ >>> for_in_bytes(bytes_ABC_null)
+ 'C'
"""
for c in s:
# Py2/Py3
'X'
>>> for_char_in_bytes(bytes_ABC)
'C'
+ >>> for_char_in_bytes(bytes_abc_null)
+ 'X'
+ >>> for_char_in_bytes(bytes_ABC_null)
+ 'C'
"""
cdef char c
for c in s:
'X'
>>> for_char_in_enumerate_bytes(bytes_ABC)
2
+ >>> for_char_in_enumerate_bytes(bytes_abc_null)
+ 'X'
+ >>> for_char_in_enumerate_bytes(bytes_ABC_null)
+ 4
"""
cdef char c
cdef Py_ssize_t i
'X'
>>> for_pyunicode_in_unicode(unicode_ABC)
'C'
+ >>> for_pyunicode_in_unicode(unicode_abc_null)
+ 'X'
+ >>> for_pyunicode_in_unicode(unicode_ABC_null)
+ 'C'
"""
cdef Py_UNICODE c
for c in s:
'X'
>>> for_pyunicode_in_enumerate_unicode(unicode_ABC)
2
+ >>> for_pyunicode_in_enumerate_unicode(unicode_abc_null)
+ 'X'
+ >>> for_pyunicode_in_enumerate_unicode(unicode_ABC_null)
+ 4
"""
cdef Py_UNICODE c
cdef Py_ssize_t i