2017-08-24 58 views
-2

我怎麼會寫,說的聲明:如何檢查,如果今天是星期一在Python

If today is Monday, then run this function. 

我的想法是:

if datetime.now().day == Monday: 
    run_report() 

但我知道這是不是做的正確方法它。我將如何正確地做到這一點?

+0

這是你可以很容易地計算出自己,通過閱讀文檔,看看有什麼'day'回報,或者甚至在shell中自己嘗試一下。 –

+0

@Alexander在這種情況下,你可以自己編輯重複列表並添加你的發現(我爲你做過)。也許你不知道這個相對較新的SE功能(使用那個你可以刪除我的「不適合」鏈接並離開你的) –

+0

@Alexander專門爲你提供:https://meta.stackoverflow.com/questions/355666/what - 如果我覺得這是原始問題的重複是不是 - –

回答

1

您可以使用date.weekday()這樣的:

from datetime import date 

if date.today().weekday() == 0: 
    run_report() 
+0

完美。欣賞它。 – sgerbhctim

2
import datetime as dt 

dt.date.today().isoweekday() == 1 # 1 = Monday, 2 = Tues, etc. 
+0

我認爲星期一是0. –

+1

不適用於'isoweekday'。返回該日期所代表的星期幾。 星期一== 1 ...星期天== 7 – Alexander

+0

你說得對我感到困惑於'週日'。感謝您的澄清! –

-1
from datetime import datetime 

# Print True just when is Monday. 
print(datetime.now().weekday() == 0) 
0

兩個datetime.datedatetime.datetime 對象都有一個today方法分別返回DateDatetime對象。

其中都有weekdayisoweekday方法。從星期一= 0 weekday計數,而從週一= 1 isoweekday計數:

from datetime import date, datetime 
if date.today().weekday() == 0: 
    # it is Monday 
if datetime.today().isoweekday() == 1: 
    # it is Monday 

documentation

相關問題