Я делаю это условие:Объект не отозваны
if ((liste_mois[0]==3) or (liste_mois[0]==6) (liste_mois[0]==9) or (liste_mois[0]==12))
я получил: TypeError: «BOOL» объект не вызываемая
Я делаю это условие:Объект не отозваны
if ((liste_mois[0]==3) or (liste_mois[0]==6) (liste_mois[0]==9) or (liste_mois[0]==12))
я получил: TypeError: «BOOL» объект не вызываемая
вы пропустили «или» между ними.
Вы получили:
TypeError: 'bool' object is not callable
только потому, что вы делаете что-то вроде этого:
(liste_mois[0]==6) (liste_mois[0]==9)
, которые могут быть представлены в виде, скажем:
(True) (False)
и далее:
(True)()
поэтому в вашем заявлении вы обрабатываете логическое значение (liste_mois[0]==6)
как функцию, потому что вы пытаетесь его вызывать. И поскольку логическое значение не является вызываемым, по этой причине вы видите эту ошибку.
Подобный пример (liste_mois[0]==6) (liste_mois[0]==9)
может быть:
def something():
pass
(something)() # <-- this
Так решение для вас будет поставить or
в вашем if
состоянии, так:
if ((liste_mois[0]==3) or (liste_mois[0]==6) or (liste_mois[0]==9) or (liste_mois[0]==12))
, и я думаю, что это то, что вы хотите.
Вы пропустили или между ними. Закрытие как опечатка. –
'(liste_mois [0] == 6) (liste_mois [0] == 9)' <- there. Поместите «или» между этими двумя. – idjaw