Warum deklarieren Unicode durch Zeichenfolge in Python?

Ich bin immer noch lernen, python und ich habe einen Zweifel:

In python 2.6.x ich erklären in der Regel Codierung in die Datei-header, wie in diesem (wie in PEP 0263)

# -*- coding: utf-8 -*-

Danach, meine strings geschrieben werden wie üblich:

a = "A normal string without declared Unicode"

Aber jedesmal, wenn ich eine python-Projekt-code, die Codierung ist nicht deklariert in der header. Stattdessen ist es erklärt auf jede Zeichenfolge wie diese:

a = u"A string with declared Unicode"

Was ist der Unterschied? Was ist der Zweck dieses? Ich weiß, Python 2.6.x legt die ASCII-Kodierung standardmäßig, aber es kann überschrieben werden, indem die header-Erklärung, so was ist der Punkt, der pro string Erklärung?

Nachtrag: Scheint, dass ich Durcheinander Datei-Kodierung mit Kodierung. Danke für die Erklärung 🙂

Kommentar zu dem Problem - Öffnen
# coding: utf8 ist gut genug, keine Notwendigkeit für die -*- Kommentarautor: jellyfish
@Qualle ich nehme an, Sie meinte, geben Sie # coding: utf-8. Kommentarautor: Samuel Harmer
Sollte #coding=utf-8. python.org/dev/peps/pep-0263 Kommentarautor: Guangtong Shen

InformationsquelleAutor der Frage Oscar Carballal | 2010-07-03

Schreibe einen Kommentar