Am Sun, 11 Dec 2016 21:01:01 +0100 schrieb Hans-Peter Jansen:
On Sonntag, 11. Dezember 2016 18:33:42 Manfred Gil wrote:
Hallo Liste,
ich spiele gerade mit Datetime rum, um das Modul verstehen zu können. Dabei viel mir auf das ich nur die Englische Bezeichnung bekomme.
<Beispiel>
import datetime as dt
heute = dt.date.today()
print("Heute ist = ",heute)
print(heute.strftime("%A %d. %B %Y")) # Tag und Monat ist in English
import locale
print(locale.getlocale())
</Beispiel >
Die Ausgabe bei mir lautet:
Heute ist = 2016-12-11 Sunday 11. December 2016 ('de_DE', 'UTF-8')
Frage: Wie bringe ich datetime bei, die Ausgabe in Deutsch zu schreiben, ich dachte ( so hab ich es verstanden ) das, wenn locale richtig gesetz ist, die Ausgabe auf Deutsch erscheinen sollte.
Dann mach das doch mal:
--> import locale --> locale.setlocale(locale.LC_ALL, '') 'de_DE.UTF-8' --> import datetime as dt --> heute = dt.date.today() --> print(heute.strftime("%A %d. %B %Y")) Sonntag 11. Dezember 2016 --> print(locale.getlocale()) ('de_DE', 'UTF-8')
und probiere das mit beiden pythons.
Wenn Du unbedingt setlocale selber zusammenbauen willst, dann so:
Python 3.4.5 (default, Jul 03 2016, 12:57:15) [GCC] on linux Type "help", "copyright", "credits" or "license" for more information. --> import locale --> import datetime as dt --> heute = dt.date.today() --> print(heute.strftime("%A %d. %B %Y")) Sunday 11. December 2016 --> locale.setlocale(locale.LC_ALL, 'de_DE.UTF-8') 'de_DE.UTF-8' --> print(locale.getlocale()) ('de_DE', 'UTF-8') --> print(heute.strftime("%A %d. %B %Y")) Sonntag 11. Dezember 2016
Aber wer will das schon... ;)
Viel Glück, Pete
richtig ... wer will das. wieso muß ich setlocale überhaupt setzen. ich wollt eigendlich nur eine Deutsche ausgabe von strftime. Gruß Manfred PS: wie ich schon schrieb klappt es, wenn ich encoding mit angebe. -- Kritiker sind blutrünstige Leute, die es nicht bis zum Henker gebracht haben. -- George Bernard Shaw