Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: Noxware en 28 Septiembre 2014, 00:39 AM

Título: [AYUDA][PYTHON] Como saber dia de la semana
Publicado por: Noxware en 28 Septiembre 2014, 00:39 AM
hola, estoy haciendo un programa q organize mis cosas de estudio para no tener q andar usando un pizarron q de por si me da flojera borrar -.-

mi problema es q necesito saber q dia de la semana es (si es lunes o martes, etc).... mi programa ya puede obtener la fecha pero necesito q mi programa sepa q dia de la semana es...... espero una solucion cualquiera q sea.... por cierto estoy usando el "Gtk.Calendar" para el almanque por si les sirve de dato adcional aunque cualquier solucion sirve :P
Título: Re: [AYUDA][PYTHON] Como saber dia de la semana
Publicado por: Eleкtro en 28 Septiembre 2014, 01:36 AM
Puedes utilizar el módulo Datetime:

Código (python) [Seleccionar]
import datetime, locale

locale.setlocale(locale.LC_ALL, 'Spanish_Spain.1252')

print datetime.datetime.strptime('28-09-2014', '%d-%m-%Y').strftime('El dia es: %A')


Fecha '28-09-2014', día:
(http://i.imgur.com/rQpTfnT.png)


8.1.7. strftime() and strptime() Behavior (https://docs.python.org/2/library/datetime.html#strftime-and-strptime-behavior)

Saludos.
Título: Re: [AYUDA][PYTHON] Como saber dia de la semana
Publicado por: tincopasan en 28 Septiembre 2014, 02:26 AM
yo lo hacía así:

Código (python) [Seleccionar]
import datetime
x = datetime.datetime.now()

dicdias = {'MONDAY':'Lunes','TUESDAY':'Martes','WEDNESDAY':'Miercoles','THURSDAY':'Jueves', \
'FRIDAY':'Viernes','SATURDAY':'Sabado','SUNDAY':'Domingo'}
anho = x.year
mes =  x.month
dia= x.day

fecha = datetime.date(anho, mes, dia)
print (dicdias[fecha.strftime('%A').upper()])





[MOD]: Utiliza el botón para insertar las etiquetas de código, no te las inventes // codigo ... :P
Título: Re: [AYUDA][PYTHON] Como saber dia de la semana
Publicado por: Noxware en 28 Septiembre 2014, 03:53 AM
Eleкtro tu respuesta me dice q es domingo en lugar de sabado en cambio la respuesta de tincopasan me funciona a la perfeccion, gracias




me podrias explicar el codigo tincopasan, es q yo nunca uso cosas complejas (siempre voy por el camino dificil usando lo basico)
Título: Re: [AYUDA][PYTHON] Como saber dia de la semana
Publicado por: Eleкtro en 28 Septiembre 2014, 04:19 AM
Es que el día 28 es Domingo, prueba a asignar el Locale correcto a tu pais/zona horaria:

Python 2.7.5 (default, May 15 2013, 22:44:16) [MSC v.1500 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> import locale
>>> locale.setlocale(locale.LC_ALL, '')
'Spanish_Spain.1252'


O también puedes dejar el parámetro vacio en el código para asignarlo automaticamente
Código (python) [Seleccionar]
locale.setlocale(locale.LC_ALL, "")

Saludos!
Título: Re: [AYUDA][PYTHON] Como saber dia de la semana
Publicado por: daryo en 28 Septiembre 2014, 04:31 AM
Cita de: Eleкtro en 28 Septiembre 2014, 04:19 AM

Código (python) [Seleccionar]
locale.setlocale(locale.LC_ALL, "")
es mejor en caso de que se ejecute en un pc de otro pais no va a servir con el spain

edito:

Código (python) [Seleccionar]
import datetime
x = datetime.datetime.now()

la fecha actual te queda en la variable x con hora fecha y segundos

puedes hacer un print x
y te dara la fecha

puedes dividir la fecha en:
Código (python) [Seleccionar]
x.year #es el anioo en ingles
x.moth el mes y asi muy simple

fecha = datetime.date(anho, mes, dia)

le da formato a la fecha
año-mes-dia

Código (python) [Seleccionar]
fecha.strftime('%A')
te devuelve el nombre del dia lunes martes etc pero en ingles asi que le asignamos un valor en
https://docs.python.org/2/library/datetime.html#strftime-and-strptime-behavior

español en un diccionario
Código (python) [Seleccionar]
dicdias={'MONDAY':'Lunes','TUESDAY':'Martes','WEDNESDAY':'Miercoles','THURSDAY':'Jueves', \
'FRIDAY':'Viernes','SATURDAY':'Sabado','SUNDAY':'Domingo'}


y se imprime el valor resultante el upper lo pone en minusculas
Código (python) [Seleccionar]
print (dicdias[fecha.strftime('%A').upper()])]
Título: Re: [AYUDA][PYTHON] Como saber dia de la semana
Publicado por: tincopasan en 28 Septiembre 2014, 05:51 AM
Al Mod:
              no tengo la menor idea cual es el botón para ingresar las líneas de código!
Título: Re: [AYUDA][PYTHON] Como saber dia de la semana
Publicado por: Eleкtro en 28 Septiembre 2014, 06:13 AM
Cita de: tincopasan en 28 Septiembre 2014, 05:51 AM
Al Mod:
              no tengo la menor idea cual es el botón para ingresar las líneas de código!

Mira mi firma.

saludos