python——計算上週5的日期

巴扎黑
發布: 2016-12-03 10:23:28
原創
1469 人瀏覽過

第一種方法:  

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)))
登入後複製


相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!