내 인생에서 나는 알아낼 수 없다. 메시지를 추출하려고하는데 .json 파일에서 말한 것이다.파이썬에서 %로 문자열을 포맷 할 때 유니 코드 오류 코드
print '<%s> %s' % (x['sender_id'], x['content'][0]['text'])
"x는"내가 알아야 할 것들을 포함하는 딕셔너리입니다 : 내가 여기에 그 정보를 공개 할 수는 없지만,이 그것을 수행하는 라인이다. 각 행의 출력과 같이 볼 수 있습니다 :
<username> The quick brown fox jumps over the lazy dog.
많은 IRC 로그에서 볼 수있다. 어쨌든 튜플에있는 두 문자열에는 모두 유니 코드가 있습니다. 즉, 공식적으로는 파이썬 유니 코드 유형입니다. 나는 확인했다. 같은 대신이 글을 쓰는 등
내가 시도UnicodeEncodeError: 'ascii' codec can't encode character u'\U0001f52b' in position 26: ordinal not in range(128)
많은 것들 :
print u'<%s> %s' % (x['sender_id'], x['content'][0]['text'])
또는 :
print '<%s> %s' % (x['sender_id'], x['content'][0]['text']).encode('utf-8')
내가 그 문자열로 포맷을 시도 할 때, 결과는 같은 일이 항상
그리고 나는이 두 가지 전략을 조합 해 보았습니다. 그러나 은 없습니다. 나는 작품을 시험해 보았습니다. 내가 도대체 뭘 잘못하고있는 겁니까?
플롯이 실제로 두꺼워졌습니다. 나는이 문제가 단지 한 인물이라는 것을 알아 챘다. 다른 사람들은 불평없이 끝까지지나 갔다. 또한 당신의 충고는 효과가 없었습니다. 어쨌든 고맙습니다. 파이썬에 버그가 있거나 변형 된 또는 독점적 인 유니 코드 캐릭터가있을 수 있다고 생각하기 시작했습니다. 분명히 그것은 권총의 이미지라고 생각됩니다 : http://www.iemoji.com/view/emoji/376/events/pistol-or-revolver – Sadiq
'sys.stdout.encoding'이란 무엇입니까? –
기본적으로 없음입니다. 방금 bash 역사를 살펴본 결과, PYTHONIOENCODING 대신 PYTHONENCODING을 작성했음을 알게되었습니다. 이제 작동합니다. – Sadiq