Wenn man Programme schreibt, welech auf verschiedenen Betriebssystemen funtionieren sollen, oder Dateien zwischen verschiedenen Systemen austauscht, wird man sich früher oder später zwangsläufig mit Zeichenkodierungen beschäftigen.

Unter Python ermöglicht das Modul codecs den Zugriff auf Dateien, wobei die zu verwendende Codierung vorgeschrieben werden kann.

Im folgenden ein kurzes Beispiel:

# -*- coding: utf-8 -*-
 
import codecs
fobj = codecs.open('./beispiel.txt', 'w', encoding='utf-8')
fobj.write(u'Hallo Python! äöüß')
fobj.close()

Im Beispiel wird zuerst die Zeichenkodierung für den Quellcode festgelegt, damit der Interpreter weiß, welche Zeichen un den Strings verwendet werden. Anschließend wird die Datei beispiel.txt im aktuellen Verzeichnis geöffnet und ein Beispieltext hineingeschrieben.

Schaut man sich die Datei in der Konsole mit dem Befehl file an, wird die Codierung angezeigt:

$ file beispiel.txt 
beispiel.txt: UTF-8 Unicode text, with no line terminators

Zum öffnen einer Datei in einer bestimmten Codierung geht man gleichermaßen vor und verwendet 'r' als Zugriffsmodus (read).