[pyar] Calcular ultimo Domingo de este mes

Juan Carlos Ojeda juancarlospaco en gmail.com
Mie Ago 31 16:04:43 ART 2011


2011/8/31 Martin Chikilian <slacklinucs en gmail.com>

> Podría ser también algo como:
>
> sundays = [ i for i in calendar.Calendar().itermonthdays2(2011, 8) if i[1]
> == calendar.SUNDAY and i[0] != 0 ]
>
> que devuelve una lista de tuplas con todos los domingo del mes, si querés
> el último es tan simple como:
>
> sundays[-1][0]
>
>
> 2011/8/31 Juan Carlos Ojeda <juancarlospaco en gmail.com>
>
>> 2011/8/30 Facundo Batista <facundobatista en gmail.com>
>>
>>> On Tue, Aug 30, 2011 at 2:50 AM, Juan Carlos Ojeda
>>> <juancarlospaco en gmail.com> wrote:
>>>
>>> > me devuelva el ultimo Domingo del corriente mes, como harian ustedes
>>> ...?
>>>
>>> >>> from dateutil.rrule import rrule, MONTHLY, SU
>>> >>> import datetime
>>> >>> primdiames = datetime.date(2011, 8, 1)
>>> >>> rule = rrule(MONTHLY, byweekday=(SU(-1),), count=1,
>>> dtstart=primdiames)
>>> >>> list(rule)[0]
>>> datetime.datetime(2011, 8, 28, 0, 0)
>>>
>>> Si querés todos los últimos domingos del año...
>>>
>>> >>> diauno = datetime.date(2011, 1, 1)
>>> >>> rule = rrule(MONTHLY, byweekday=(SU(-1),), count=12, dtstart=diauno)
>>> >>> for fecha in rule:
>>> ...   print fecha
>>> ...
>>> 2011-01-30 00:00:00
>>> 2011-02-27 00:00:00
>>> <cortado>
>>>
>>> Y así.
>>>
>>> "rrule" es poderosísimo: http://labix.org/python-dateutil
>>>
>>> Slds.
>>>
>>> --
>>> .    Facundo
>>>
>>> Blog: http://www.taniquetil.com.ar/plog/
>>> PyAr: http://www.python.org/ar/
>>> _______________________________________________
>>> pyar mailing list pyar en python.org.ar
>>> http://listas.python.org.ar/listinfo/pyar
>>>
>>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>
>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>> Argentina - http://www.usla.org.ar
>>>
>>
>> Gracias, me parecia que habia algo asi,
>> igual pensaba que era parte de la STD lib,
>> pero se instala facil parece, Gracias ...!   :)
>>
>> --
>> .
>>
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>


#!/usr/bin/env python
# -*- coding: utf-8 -*-
import time
import calendar
localtime = time.localtime(time.time())
yearz = localtime[0]
monthz = localtime[1]
sundays = [ i for i in calendar.Calendar().itermonthdays2(yearz, monthz) if
i[1] == calendar.SUNDAY and i[0] != 0 ]
print str(sundays[-1][0]) + "/" + str(monthz) + "/" + str(yearz)

Resuelto en menos de 10 lineas con lo STD, son unos grosos.
Por que cuantos menos libs le tengo que agregar mejor.
Gracias!
-- 
.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20110831/29b5daab/attachment.html>


More information about the pyar mailing list