Mam kilka ciągów bajtów (str
, a nie unicode
, w python 2.7) zawierających dane Unicode (w kodowanie utf-8
).python 2.7 string.join() z Unicode
Próbuję połączyć je (przez "".join(utf8_strings)
lub u"".join(utf8_strings)
), który rzuca
UnicodeDecodeError: 'ascii' codec can't decode byte 0xec in position 0: ordinal not in range(128)`
Czy istnieje jakiś sposób, aby skorzystać z .join()
metoda ciągów non-ASCII? jestem pewien, że mogę je połączyć w pętlę for, ale nie byłoby to opłacalne.
w jaki sposób można wtedy odłączyć obiekty 'unicode' i' str'? – fiona
@fiona zadecyduj o swoich ciągach bajtów do Unicode, a następnie dołącz. Najlepiej jest dekodować jak najwcześniej, kodować tylko wtedy, gdy skończysz z tekstem i musisz przekazać go do czegoś, co tylko zaakceptuje bajty. –