2017-09-13 154 views
-2

我遇到了語法和條件語法問題。我正在嘗試編寫一個函數,該函數返回設置鬧鐘的時間,具體取決於兩個參數,它是哪一天以及該人是否在度假。我的日子編碼爲0 =星期日,1 =星期一...... 6 =星期六。該功能需要返回'7:00平日而不是休假,'10:00'平日假期和週末不休假,最後在週末不返還假期返回'off'。到目前爲止,我有以下代碼,但我在Wing中得到一個語法錯誤,無法弄清楚我的問題是什麼。任何幫助表示讚賞。Python條件和If語句語法

def alarm_clock(day, on_vacation): 
    """Alarm clock function""" 

    if (int(day) < 6 and int(day) != 0) and not on_vacation: 
     return('7:00') 

    elif (int(day) = 6 or int(day) = 0) and not on_vacation: 
     return('10:00') 

    elif (int(day) < 6 or int(day) != 0) and on_vacation: 
     return('10:00') 

    elif (int(day) = 6 or int(day) = 0) and on_vacation: 
     return('off') 
+3

等於運算符是''==,而不是'='。 – Kevin

回答

0

那是因爲你正在使用=代替==的比較。

喜歡在int(day) = 6。它應該是:

int(day) == 6 
+0

哦,哇,非常感謝! –

1

您試圖使用=(賦值運算符)來比較值。您應該改用==

實施例:電流:int(day) = 6,正確的:int(day) == 6