Mine værktøjer
Du er her: Forside diverse filer til download mm. ugenrdage.py
Handlinger tilknyttet webside

ugenrdage.py

af adminSidst opdateret 25/05 2007 18:07

Klik her for at hente fil

Størrelse: 2.0 kB - Filtype text/python-source

Indhold af fil-indholdsobjekt

#!/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() 
« august 2018 »
søn man tir ons tor fre lør
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
Dyrk motion

Trim ballerup

 

Powered by Plone, the Open Source Content Management System