2010-01-19 20 views
8

¿Qué tengo que hacer (para cargar módulos, métodos de localización para invocar, etc.) de manera que cuando llamo:pitón de localización de fecha y hora

datetime.date(2009,1,16).strftime("%A %Y-%b-%d") 

en vez de conseguir:

Out[20]: 'Friday 2009-Jan-16' 

i obtener español/francés/alemán/salida ...

Out[20]: 'Viernes 2009-Ene-16' 

sin tener que cambiar la configuración regional del sistema operativo de mi entera (es decir, sólo tiene que utilizar las llamadas pitón para establecer dinámicamente la configuración regional y mantener los cambios dentro de mi aplicación)

Gracias.

Respuesta

7
+0

lo siento por la pregunta básica, pero ¿cómo se establece? 'español' en locale.locale_alias.keys() verdadera locale.setlocale (locale.LC_ALL, 'español') de error: locale sin soporte de ajuste –

+1

'locale.setlocale (local.LC_TIME, 'en_US') ' –

+0

intentado locale.setlocale (locale.LC_TIME, 'es_ES') y sigue obteniendo Error: configuración regional no compatible –

2

Después de establecer la configuración regional (con locale.setlocale) Puede utilizar nl_langinfo método de los módulos locale, así:

time.strftime(locale.nl_langinfo(locale.D_T_FMT), time.localtime()) 
2

En Ubuntu,

$> sudo locale-gen es_ES.UTF-8 
$> sudo dpkg-reconfigure locales 
$> python 
>>> import locale 
>>> locale.setlocale(locale.LC_TIME, 'es_ES.UTF-8') 
Cuestiones relacionadas