Pythoni loogilised operaatorid: And, Or, Not selgitatud näidete abil

1. Ülevaade loogilistest operaatoritest Pythonis

Mis on loogilised operaatorid Pythonis?

Pythonis on olemas and, or ja not loogilised operaatorid, mida kasutatakse mitme tingimuse korraga kontrollimiseks. Need operaatorid aitavad kombineerida tingimusi ja on eriti kasulikud if ja while lausetes. Loogiliste operaatorite roll on järgmine:
  • and: tagastab True, kui kõik tingimused on True.
  • or: tagastab True, kui vähemalt üks tingimus on True.
  • not: pöörab ümber True ja False väärtused.
Nende operaatorite mõistmine võimaldab kirjutada tingimuslauseid intuitiivselt ja kokkuvõtlikult.

Põhiline näide:

if temperature > 20 and humidity < 60:
    print("See on mugav kliima")
else:
    print("Kliima ei ole mugav")
Selles näites kuvatakse „See on mugav kliima” ainult siis, kui temperature ja humidity mõlemad tingimused on täidetud. Loogiliste operaatorite eelis seisnebki selles, et nad võimaldavad mitut tingimust korraga hinnata.

2. Mis on and operaator Pythonis?

and operaatori põhitõed

and operaator täidab loogilise korrutise (AND) rolli ja tagastab True ainult siis, kui kõik tingimused on True. Seda kasutatakse sageli if-lausetes, kus on vaja kontrollida mitut tingimust korraga.

Praktiline näide:

age = 25
income = 50000

if age >= 18 and income >= 30000:
    print("Laenu taotlemine on võimalik")
else:
    print("Tingimused ei ole täidetud")
See kood kontrollib vanust ja sissetulekut ning kuvab teate ainult siis, kui mõlemad tingimused on täidetud. Nii aitab and operaator tingimusi tõhusalt kontrollida.

Mitme tingimuse samaaegne kontrollimine

and operaator on eriti kasulik, kui on vaja kontrollida mitut tingimust korraga. Näiteks:
temperature = 22
humidity = 55
wind_speed = 10

if temperature > 20 and humidity < 60 and wind_speed < 15:
    print("Täna on väga mugav ilm")
else:
    print("Ilm ei ole väga hea")
Nii saab mitut tingimust kirjutada ühes reas, muutes koodi lihtsamaks.

3. Praktilised näited: mitme tingimuse kirjutamine ühte ritta

if-lausete lihtsustamine and abil

Mitme tingimuse kirjutamine ühele reale parandab koodi loetavust. Ilma and-operaatorita tuleks kasutada pesastatud if-lauseid, mis muudavad koodi keerulisemaks.

Pesastatud if-lausete näide:

age = 30
income = 60000

if age >= 18:
    if income >= 50000:
        print("Laenu saab taotleda")
    else:
        print("Sissetulek ei vasta tingimustele")
else:
    print("Vanus ei vasta tingimustele")

and abil kirjutatud näide:

age = 30
income = 60000

if age >= 18 and income >= 50000:
    print("Laenu saab taotleda")
else:
    print("Tingimused ei ole täidetud")
Nagu näha, muudab and koodi kompaktsemaks ja loetavamaks.

Vahemiku tingimuste lihtsustamine

Pythonis saab kasutada ka lihtsustatud vahemiku tingimusi ilma and-operaatorita:
score = 75

if 60 <= score <= 100:
    print("Eksami tulemus: sooritatud")
See teeb koodi veelgi selgemaks.

4. and operaatori lühihindamine (short-circuit)

Kuidas töötab lühihindamine?

and operaatori eripäraks on lühihindamine, mis tähendab, et kui esimene tingimus on False, ei hinnata ülejäänud tingimusi. See väldib tarbetut töötlemist ja parandab jõudlust.

Näide lühihindamisest:

def condition1():
    print("Hindan tingimust 1...")
    return False

def condition2():
    print("Hindan tingimust 2...")
    return True

if condition1() and condition2():
    print("Mõlemad tingimused on True")
else:
    print("Vähemalt üks tingimus on False")
Selles näites funktsiooni condition2() ei käivitata, kuna condition1() tagastab False.
年収訴求

5. and operaatori ja pesastatud if-lause võrdlus

Erinevus pesastatud lausetega

Pesastatud if-lausete puhul hinnatakse tingimusi ükshaaval, mis võib muuta koodi keerulisemaks. and operaator aga lubab mitut tingimust korraga kontrollida.

Pesastatud if-lause näide:

if condition1():
    if condition2():
        if condition3():
            print("Kõik tingimused on True")

and abil kirjutatud näide:

if condition1() and condition2() and condition3():
    print("Kõik tingimused on True")
Nii muutub kood palju loetavamaks.

6. Jõudluse parandamise nipid

Ressursimahukate protsesside optimeerimine

and operaatori lühihindamist saab kasutada, et vältida ressursimahukaid operatsioone, kui lihtsamad tingimused juba ei vasta.

Näide failiga töötamisest:

def file_exists(file_path):
    return os.path.exists(file_path)

def read_file(file_path):
    print("Faili lugemine...")
    with open(file_path, 'r') as file:
        return file.read()

file_path = "data.txt"

if file_exists(file_path) and read_file(file_path):
    print("Fail loeti edukalt")
else:
    print("Faili ei eksisteeri")
See väldib tarbetut failitöötlust, kui faili pole olemas.

7. Kokkuvõte

and operaator aitab hinnata mitut tingimust korraga, kirjutada lihtsamat koodi ja vältida liigseid protsesse. Lühihindamise kasutamine suurendab jõudlust ja parandab programmi efektiivsust.

Peamised punktid

  1. and operaatori põhiroll: tagastab True ainult siis, kui kõik tingimused on täidetud.
  2. Lühihindamise kasutamine: esimese tingimuse False korral ei hinnata järgmisi, säästes ressursse.
  3. Pesastatud if-lause vs and: and muudab koodi lihtsamaks ja loetavamaks.
  4. Jõudluse parandamine: eriti kasulik ressurssimahukate toimingute korral, nagu failitöötlus või andmebaasi päringud.
Tingimuslausete tõhus kasutamine Pythonis mõjutab otseselt nii jõudlust kui ka loetavust. and operaator oma lihtsa süntaksi ja lühihindamisega aitab kirjutada paremat koodi. Proovi kindlasti and operaatorit oma projektides ja muuda kood elegantsemaks!
年収訴求