attributeerror str object has no attribute decode

У меня есть некоторые проблемы с методом «декодирования» в Python 3.3.4. Это мой код:

Но я не могу расшифровать строку для этой проблемы:

Есть ли у вас какие-либо идеи? Спасибо

Содержание

  1. 3 ответа
  2. 1 Answer 1
  3. Not the answer you’re looking for? Browse other questions tagged python algorithm encryption or ask your own question.
  4. Linked
  5. Related
  6. Hot Network Questions
  7. 5 ответов

3 ответа

Один кодирует строки, а другой — байты.

Вы должны прочитать байты из файла и декодировать их:

К счастью, open имеет аргумент кодирования, который делает это легко:

open уже декодирует в Unicode в Python 3, если вы открываете в текстовом режиме. Если вы хотите открыть его в байтах, чтобы потом можно было его декодировать, вам нужно открыть его в режиме ‘rb’.

This is my code,

Output

1 Answer 1

It’s because you try to decode a string. bytes type can be decoded but not str type. You should encode ( key.encode() ) this (or use b»foo» ) before, to convert the string to a bytes object.

Not the answer you’re looking for? Browse other questions tagged python algorithm encryption or ask your own question.

Linked

Hot Network Questions

To subscribe to this RSS feed, copy and paste this URL into your RSS reader.

site design / logo © 2019 Stack Exchange Inc; user contributions licensed under cc by-sa 4.0 with attribution required. rev 2019.11.15.35459

на данный момент я получаю сообщение об ошибке

Python 3 больше не имеет декодирования, я прав? как я могу это исправить?

Я выбираю только 1-е письмо. Как выбрать все?

5 ответов

вы пытаетесь декодировать объект, который уже декодированный. У вас есть str , больше нет необходимости декодировать из UTF-8.

просто удалить .decode(‘utf-8’) детали:

Что касается вашего fetch() вызов, вы явно запрашиваете только первое сообщение. Используйте диапазон, если хотите получить больше сообщений. Вижу документация:

The message_set опции для команд ниже строка, указывающая одно или несколько сообщений для выполнения действий. Это может быть простой номер сообщения ( ‘1’ ), диапазон номеров сообщений ( ‘2:4’ ) или группа несмежных диапазонов, разделенных запятыми ( ‘1:3,6:9’ ). Диапазон может содержать звездочку, указывающую на бесконечную верхнюю границу ( ‘3:*’ ).

начните с Python 3, вся строка является объектом unicode.

код перед тем же. Поэтому я думаю, что вы должны удалить .decode(‘utf-8’) . Потому что вы уже получили объект unicode.

Источник: computermaker.info

Понравилась статья? Поделиться с друзьями:
Ок! Компьютер
Добавить комментарий