Wpis z mikrobloga

Proste pytanie, dlaczego jeżeli pierwszy string w warunku nie znajduje się w liście imiona to warunek mi przechodzi, skoro and sprawdza czy oba warunki są prawdziwe ?

imiona = [ 'imie1' , 'imie2 , 'imie3' ]
if 'xxx' and 'imie1' in imiona:
print('Imiona znajdują się na liście')

> Imiona znajdują się na liście


#python
  • 9
@UszneStopery: eee xxx zawsze daje true, tu z mojego idla:
NameError: name 'imiona' is not defined

>> imiona = [ 'imie1' , 'imie2 , 'imie3' ]


SyntaxError: invalid syntax

>> imiona = [ 'imie1' , 'imie2','imie3' ]

>> if 'xxx' and 'imie1' in imiona:print('Imiona znajdują się na liście')


Imiona znajdują się na liście

>> if 'imie3' and 'imie1' in imiona:print('Imiona znajdują się na liście')


Imiona znajdują się na liście

>> if
via Wykop Mobilny (Android)
  • 1
@UszneStopery: To są dwa warunki:
if

'xxx' -> tutaj dostajesz true bo nie jest to pusty string czy słowo false

imię1 in imiona-> tutaj dostajesz true bo rzeczywiście jest w liście.

Jak chcesz to rozpisać tak żeby działało, musiałoby to wyglądać tak

if 'xxx' in imiona and 'imie1' in imiona:
#do something