Я хотел бы получить количество букв в заданной строке. Однако len (txt) возвращает количество букв в форме Юникода (я думаю), но фактическое количество букв меньше того, что я получаю.Python 3 - количество букв в закодированной строке
, например:
txt = שלום וברכה
len(txt) # returns something different then 10
я увидел решение для питона 2 с использованием string.decode
, который не доступен в Python 3 - и я не уверен, что это правильный ответ для меня. Кстати, кодировка для строки cp862
.
EDIT: более подробно: Я читаю из текстового файла с помощью
with open(path, "r", encoding="cp862") as textFile:
это выходной линии я прочитал, когда я печатаю это
╫¬╫ñ╫¿╫ש╫ר ╫£╫ª╫ץ╫¥: ╫¢╫ת ╫¬╫ª╫£╫ק╫ץ ╫נ╫¬ ╫¢╫ש╫ñ╫ץ╫¿
Длина 52. Настоящая строка: תפריט לצום: כך תצלחו את כיפור и настоящая длина 29
На repl.it Я получаю:> len ("שלום וברכה") => 10. Возможно, вы могли бы предоставить более подробную информацию о своей платформе и версии python. – Yegers
Я получаю это: '>>> len ('שלום וברכה') >>> 10' – IsaacDj
По крайней мере, предоставить действительный действительный код для воспроизведения проблемы. Этот образец даже не синтаксически не действителен. – deceze