Personal tools
You are here: Home diverse filer til download mm. ugenrdage.py
Document Actions

ugenrdage.py

by admin last modified 2007-05-25 18:07

Click here to get the file

Size 2.0 kB - File type text/python-source

File contents

#!/usr/bin/python
# -*- coding: UTF-8 -*-
# File: ugenrdag.py
"""
Usage: ugenrdag.py <weeknumber in month> <weekday> <week> <year>
     <weeknumber in month>: eks 2
     <weekday>  : 1 er mandag ugedag 1..7
     <week>     : 1..53
     <year>     : yyyy
    
svar på http://www.experten/spm/779990
Hvordan finder man et uge nummer for en specifik dag hver måned.

Hej allesammen
Jeg er stødt ind i et problem under udarbejdelsen af en listningen
til mit website, som jeg håber en eller anden herinde kan hjælpe mig med.

Som Eksempel:
Min listning viser uge 21,22,23,24,25,26
Nu ville jeg gerne have en markering på de uger som indeholder
den 4 tirsdag hver måned f.eks. Det vil sige at der skulle laves
en markering på uge 21 og uge 26.
Det kunne også være jeg ville have markeringen den første onsdag.

Det jeg altså gerne vil have er et stykke kode, som kan beregne
den første, anden, tredje, fjerde forkomst af en dag hver måned.
Jeg har selv siddet og rodet med dette problem et pænt stykke tid,
men har ikke kunne knække den, så jeg håber en eller anden herinde kan hjælpe.

Jeg har skrevet alt andet på siden i Jscript, men VBscript funktioner
kan jo også bruges da de kan kaldes fra Jscript.

Håber på snarlig hjælp ;) på forhånd tak.
"""
import datetime

if __name__ == "__main__":
    import sys
    try:
        weeknumber, weekday, week, year = [ int( arg ) for arg in sys.argv[1:] ]
    except:
        print __doc__
        sys.exit( 1 )

    first_day_in_year = datetime.datetime( year, 1 ,1 )

    day_in_year = 7*(week-1) + weekday - int( first_day_in_year.strftime( "%W" ) )
    dato = first_day_in_year + datetime.timedelta( days=day_in_year )

    day, month, year= dato.day, dato.month, dato.year
    ugedag = dato.strftime( "%A" )
    maaned = dato.strftime( "%B" )
    if ( day / 7 + 1 ) == weeknumber : 
        print "this week %(week)s got %(weeknumber)s. %(ugedag)s in this month %(maaned)s" % vars() 
    else:
        print "this week %(week)s do not contain %(weeknumber)s. %(ugedag)s in this month %(maaned)s" % vars() 
« May 2012 »
Su Mo Tu We Th Fr Sa
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Chat Rooms
CMS ?

Sparer man tid og penge på Plone

ja
nej
ved ikke

Dyrk motion

Trim ballerup

 

Powered by Plone, the Open Source Content Management System