Dus als je er 1tje hebt gevonden...
Not everybody wins, and certainly not everybody wins all the time.
But once you get into your boat, push off and tie into your shoes.
Then you have indeed won far more than those who have never tried.
JaOnTracK schreef op zondag 23 juli 2006 @ 13:35:
Zondagen liggen over het algemeen 7 dagen uit elkaar
Dus als je er 1tje hebt gevonden...
Verder begrijp ik uit die pagina dat in het datetime tuple de dag van de week zit, dus je hoeft alleen maar te weten of weken op zondag of maandag beginnen en "dag van de week" of "dag van de week + 1" van de huidige dag af te trekken om de afgelopen zondag te vinden.
[ Voor 3% gewijzigd door Confusion op 23-07-2006 13:52 ]
Wie trösten wir uns, die Mörder aller Mörder?
Zitten hier nog rare dingen / grove fouten in die misschien beter anders hadden gekund?
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
| #!/usr/bin/env python import datetime, smbmount, log, os def in_array(searchValue): for k, v in dict.items(): if v == searchValue: return True return False dict = {} today = datetime.date.today() #vandaag toevoegen aan de te-houden-backups dict["day1"] = today #Ook de rest van de afgelopen week bewaren for i in range(2,8): delta = datetime.timedelta(days=i-1) date = today - delta dict["day%s" % i] = date #Get the first sunday dow_today = today.isoweekday() if (dow_today == 7): dict["sunday1"] = today else: delta = datetime.timedelta(dow_today) dict["sunday1"] = today - delta #Then get the other three sundays for i in range(2,5): delta = datetime.timedelta(weeks=i) date = dict["sunday1"] - delta dict["sunday%s" % i] = date #First try to mount the samba share try: share = '//10.76.122.23/Backups' homedir = log.getHomeDir() mountpoint = '%s/mnt/backups' % homedir username = 'dikkevinger' password = 'hackme' smbmountObj = smbmount.smbmount(share, mountpoint, username, password) smbmountObj.mountShare() except Exception, e: log.logError(e) sys.exit() dirs = os.listdir("%s/webaccounts" % smbmountObj.mountpoint) #Change the datetime objects in strings for k,v in dict.items(): dict[k] = v.strftime("%Y%m%d") dellist = [] for v in dirs: if not in_array(v): dellist.append(v) #Maybe some more checks? for dir in dellist: absolutePath = smbmountObj.mountpoint + '/webaccounts/' + dir log.logMessage("I'm going to delete this dir: %s" % (absolutePath)) import shutil try: shutil.rmtree(absolutePath) except Exception, e: log.logError("Failed to delete directory %s" % absolutePath) |
[ Voor 32% gewijzigd door DumbAss op 23-07-2006 17:20 . Reden: Nog wat code wijzigingen ]
Verwijderd
Hee bedankt. Ik gebruikte die vorm van exception omdat ik gewoon alle mogelijke exceptions wilde opvangen.Verwijderd schreef op zondag 23 juli 2006 @ 17:23:
"except Exception, e" is nogal ranzig. Als je een bepaald soort exception (bijv. IOError) verwacht, moet je die opvangen. In plaats van je in_array() functie kan je ook gewoon "waarde in dict.values()" gebruiken. Inhoudelijk heb ik niet naar je script gekeken, dit zijn gewoon dingen die me opvielen als niet erg Pythonic.
De code met waarde in dict.values() werkte erg goed!