/ / problemy z zapisaniem pandy DataFrame w pliku tekstowym Unicode - python, unicode, pandy

problemy z zapisaniem pandy DataFrame w pliku tekstowym Unicode - python, unicode, pandy

Napisałem program do generowania unikoduplik tekstowy do przesłania na stronę internetową. Udało mi się prototypować ten konkretny plik przy użyciu programu Microsoft Access i zauważyłem, że witryna odrzuca plik jako plik tekstowy Unicode, jeśli jest zakodowany jako plik utf-8. Z edytora tekstów (przy użyciu Notatnika Windows), jeśli zapiszę plik przy użyciu kodowania Unicode w menu rozwijanym, strona internetowa, którą wysyłam, akceptuje plik w porządku.

W związku z tym napisałem program do autogeneracji pliku przy użyciu pand i DataFrames Ostatni wiersz mojego programu eksportuje DataFrame do pliku tekstowego:

 coa1.to_csv("0000-2951-test.txt",index=False, sep="t", encoding = "utf-8")

Generuje to właściwy plik, ale gdy go otworzęw Notatniku, wymienione kodowanie to ANSI, a nie Unicode. Jak napisać DataFrame do pliku Unicode? A jaki rodzaj Unicode Notepad ma na myśli Unicode (gdy nie ma żadnych dodatkowych kwalifikatorów)?

Odpowiedzi:

3 dla odpowiedzi № 1

"unicode" nie jest jednym konkretnym kodowaniem, ale zbiorem kodowań. Może to być utf-8, utf-16, utf-32. bardziej szczegółowe wyjaśnienie

w Windowsie, unicode często oznacza utf-16, i możliwe, że ta strona internetowa oczekuje utf-16. spróbuj zakodować twój CSV w utf-16 i sprawdź, czy jest on "unicode" w Notatniku, a ta strona go akceptuje.

coa1.to_csv("0000-2951-test.txt",index=False, sep="t", encoding = "utf-16")

EDYTOWAĆ Zamiast korzystania z Notatnika systemu Windows sugeruję użycie bardziej przyzwoitego edytora tekstu do prototypowania, który umożliwia precyzyjne ustawienie kodowania. użyłbym Wzniosły lub Notepad ++