Maison  >  Article  >  développement back-end  >  python——计算上周5的日期

python——计算上周5的日期

巴扎黑
巴扎黑original
2016-12-03 10:23:281521parcourir

第一种方法:  

from datetime import datetime, timedelta  
weekdays = ['Monday','Tuesday','Wednesday','Thursday',  
            'Friday','Saturday','Sunday']  
def get_previous_byday(dayname, start_date=None):  
    if start_date is None:  
        start_date = datetime.today()  
    day_num = start_date.weekday()  
    day_num_target = weekdays.index(dayname)  
    days_ago = (7 + day_num - day_num_target) % 7  
    if days_ago == 0:  
        days_ago = 7  
    target_date = start_date - timedelta(days = days_ago)  
    return target_date  
  
print( datetime.today() )  
print( get_previous_byday('Monday') )  
print( get_previous_byday('Monday', datetime(2016, 8, 28)) )

 第二种方法,用dateutil模块  

from datetime import datetime  
from dateutil.relativedelta import relativedelta  
from dateutil.rrule import *  
d = datetime.now()  
print(d)  
print(d + relativedelta(weekday=FR))  
print(d + relativedelta(weekday=FR(-1)))


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn