AttributeError: у объекта 'list' нет атрибута 'decode' - PullRequest
0 голосов
/ 29 ноября 2018

У меня есть следующая строка кода, где я пытаюсь декодировать в utf-8, как мне запустить это для списка?

radars_string = '\n'.join(changed_project_data['rdars'].decode('utf-8', 'ignore'))

Ошибка: -

AttributeError: 'list' object has no attribute 'decode'

Ответы [ 3 ]

0 голосов
/ 29 ноября 2018

Вы не можете применить decode к списку.

Вы можете использовать генератор, подобный этому '\n'.join([i.decode('utf-8', 'ignore') for i in changed_project_data['rdars']]), чтобы применить декодирование к каждому элементу.

Или используйте карту: '\n'.join(map(lambda x: x.decode('utf8', 'ignore'), changed_project_data['rdars'])).

0 голосов
/ 29 ноября 2018
radars_string = '\n'.join([i.decode('utf-8', 'ignore') for i in changed_project_data['rdars']])
0 голосов
/ 29 ноября 2018

Вы можете декодировать отдельные строки в списке с помощью выражения генератора:

radars_string = '\n'.join(s.decode('utf-8', 'ignore') for s in changed_project_data['rdars'])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...