
ŹRÓDŁO : http://szgrabowski.kis.p.lodz.pl/Python-podstawy.html
Typ logiczny (bool)
Typ ten ma dwie wartości: True i False (zwróć uwagę na wielkość liter). Warto jednak wiedzieć, że jako False ewaluowane są następujące wyrażenia:
None
0
"" # czy inaczej zapisane łańcuchy puste
()
[]
{}
To nic, że nie ze wszystkimi z w/w się już spotkałeś. Jeszcze wiele przed nami.
Do pewnego stopnia przypomina to konwersje w C/C++. Sprawdź:
bool(3), bool(0), bool(0.0001), bool(0.0), bool(-2), bool(3 > 4).
Co otrzymasz na ekranie? Najpierw pomyśl, potem sprawdź:
li = [2,3,1] while li: print li[-1], del li[-1]
Można się domyślić, że jeśli np. napis pusty ewaluowany jest jako False, to dowolny napis niepusty będzie True. Sprawdź:
bool("Python jest fajny")A nawet takie coś jest możliwe (choć nie polecam); pomyśl najpierw, co wyjdzie:
print 10 + True + False + True + (2==2)
Oczywiście wyrażeń logicznych używa się nie tylko przy while, ale też przy if i elseif.
Teraz taki przykład (inspiracja z książki „Beginning Python” M. L. Hetlanda). Najpierw pomyśl, czy dokładnie rozumiesz, co się dzieje, potem uruchom.
name = raw_input("Your name, sir/madam? ")
while not name:
print "You must give some name"
name = raw_input("Your name, sir/madam? ")
if name.title() != "Bill Gates":
print "Welcome!"
else:
print "Access denied"

Offline