Próbuję zmienić python3. Domyślne jest kodowanie UTF8. Czy nadal powinienem używać deklaracji kodowania na początku każdego pliku?Czy powinienem używać deklaracji kodowania w Python3?
# -*- coding: utf-8 -*-
Próbuję zmienić python3. Domyślne jest kodowanie UTF8. Czy nadal powinienem używać deklaracji kodowania na początku każdego pliku?Czy powinienem używać deklaracji kodowania w Python3?
# -*- coding: utf-8 -*-
Ponieważ domyślnym jest UTF-8, trzeba tylko użyć tego oświadczenia, jeśli odbiegają od domyślnego lub jeśli opierają się na innych narzędzi (jak IDE lub edytor tekstu) do wykorzystania te informacje.
Innymi słowy, jeśli chodzi o Python, tylko wtedy, gdy chcemy zastosować kodowanie, które jest inne, należy użyć tej deklaracji.
Należy pamiętać, że dotyczy to tylko tego, w jaki sposób Python odczytuje kod źródłowy. Nie dotyczy drukowania, otwierania plików ani innych operacji we/wy. Aby uzyskać więcej informacji na temat Pythona, Unicode i kodowania, gorąco zachęcam do przeczytania Python Unicode HOWTO lub bardzo dokładnego Pragmatic Unicode talk autorstwa Neda Batcheldera.
"# - * - kodowanie: utf-8 - * -" może być nadal przydatne dla niektórych edytorów do przełączania się na oczekiwane kodowanie podczas edycji pliku źródłowego. – pepr
@pepr Znak zamówienia Byte mógłby zrobić to samo, nie? – endolith
@endolith: BOM UTF-8 jest obrzydliwością na tej ziemi, wyprodukowanym przez Microsoft .. Zobacz https://en.wikipedia.org/wiki/Byte_order_mark#UTF-8 –
Domyślnie * za co *? – delnan
Założenia języka python. –
To oczywiste. Chodzi mi o to, w jakim celu zakłada się kodowanie UTF-8? Istnieje mnóstwo miejsc, w których powstaje pytanie o kodowanie: pliki I/O, sieci, inne wejścia/wyjścia, kod źródłowy, wiele struktur danych w pamięci itp. – delnan