-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdate.py
More file actions
24 lines (21 loc) · 1001 Bytes
/
date.py
File metadata and controls
24 lines (21 loc) · 1001 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# -*- coding: utf-8 -*-
#@author: H.BOUIA (Created on Dec 2013)
#-------- Jour correspondant à une date donnée----------------------------------
def jour(date): # date est sous la forme 'jj/mm/aaaa'
jours=['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi']
# nombre de jours cumulés des mois précédents modulo 7
# sur la base d'une année non bissextile
code_mois=[0,3,3,6,1,4,6,2,5,0,3,5]
# Extraction du jour, mois et année de la date 'jj/mm/aaaa'
j,m,a=map(int,date.split('/'))
# année de référence : 1900
a=a-1900
# eps=1 si l'année est bissextile (=0 sinon)
eps=1 if (a%400==0 or (a%4==0 and a%100!=0)) else 0
# Calcul du numéro du jour
#r=(j%7)+(code_mois[m-1]%7)+((a+a//4)%7)-int(m<=2)*eps
r=(j+code_mois[m-1]+(a+a//4)-int(m<=2)*eps)%7
return jours[r]
if __name__=="__main__":
for date in ['28/02/2014','01/03/2014','31/12/2014','01/01/2015']:
print(date,' : ',jour(date))