Iterm Python3 элементы разделения текста, начинающиеся с буквы 'b' - PullRequest
0 голосов
/ 04 мая 2018

Я изучаю CS61a в начале. Когда я открываю текст работы Шекспира, я использую text.read (). Split () , после чего все элементы возвращаются с буквой «b» в начале.

Так почему же в начале стоит буква "b"? Что это значит? Есть ли способ это исправить? Заранее спасибо!

Вот код:

    >>> shakes=urlopen('http://composingprograms.com/shakespeare.txt')
    >>> text=shakes.read().split()
    >>> text[:25]
    [b'A', b"MIDSUMMER-NIGHT'S", b'DREAM', b'Now', b',', b'fair', b'Hippolyta', b',', b'our', b'nuptial', b'hour', b'Draws', b'on', b'apace', b':', b'four', b'happy', b'days', b'bring', b'in', b'Another', b'moon', b';', b'but', b'O']

1 Ответ

0 голосов
/ 04 мая 2018

Ответ здесь.

https://stackoverflow.com/a/6269785/8313460

Цитировать документацию по Python 2.x:

Префикс 'b' или 'B' игнорируется в Python 2; это указывает, что литерал должен стать байтовым литералом в Python 3 (например, когда код автоматически преобразуется с 2to3). За префиксом «u» или «b» может следовать префикс «r».

Документация Python 3.3 гласит:

Байтные литералы всегда начинаются с префикса 'b' или 'B'; они производят экземпляр типа байтов вместо типа str. Они могут содержать только символы ASCII; байты с числовым значением 128 или более должны быть выражены с помощью экранирования.

...