A Pythonban a nem egyenlő és az egyenlő operátorokkal ellenőrizheti, hogy két Python-objektum azonos értékű-e. Ez az oktatóanyag megtanítja Önnek, hogyan kell használni ezeket az operátorokat sok példakóddal.
Ebben az oktatóanyagban megtanulhatja:
- a nem egyenlő (!=) operátor szintaxisa és a használati esetek,
- az egyenlő operátor (==) szintaxisa példákkal, és
- az is és is not operátorok használata bármely két Python-objektum azonosságának ellenőrzésére.
Kezdjük el.
Tartalomjegyzék
Python nem egyenlő operátori szintaxis
Bármely két Python objektum obj1 és obj2 esetén a nem egyenlő operátor általános szintaxisa a következő:
<obj1> != <obj2>
- Igaz értéket ad vissza, ha az obj1 és az obj2 értéke nem egyenlő, és
- Hamis értéket ad vissza.
Megjegyzés: Mint fentebb említettük, az obj1 és obj2 lehetnek egész számok, lebegőpontos számok, karakterláncok, listák és így tovább.
Példák a Python nem egyenlő operátorkódra
Ebben a részben kódoljunk néhány példát, hogy jobban megértsük a nem egyenlő operátort.
A Python Not Equal operátor használata az összehasonlításhoz
Íme az első példánk.
num1 = 27 num2 = 3*9 num1 != num2 # Output: False
A kódpéldákat futtathatja a etoppc.com Python IDE-n – közvetlenül a böngészőből. Vagy dönthet úgy, hogy a helyi gépen fut.
Mivel a szam1 = 27, és a szam2 is 27-re számít (3*9 = 27), a num1 és a num2 értéke egyenlő. Tehát a != operátor False értéket ad vissza.
Vegyünk egy másik példát.
Az alábbi kódban a num1 értéke 7. A szám2 pedig a 7. karakterlánc. Mivel különböző adattípusúak, a nem egyenlő operátor True értéket ad vissza.
num1 = 7 num2 = "7" num1 != num2 # Output: True
A karakterláncot egész számra adja, az ábrán látható módon:
num1 = 7 num2 = int("7") num1 != num2 # Output: False
Ebben az esetben láthatja, hogy a visszaadott eredmény hamis – mivel a num1 és a num2 most egyenlő a 7 egész számmal.
A nem egyenlő operátort Python-gyűjteményekkel, például listákkal, sorokkal és halmazokkal is használhatja.
Megjegyzés: Adatgyűjtemények, például listák esetében a nem egyenlő operátor az egyes elemek értékeinek ellenőrzésével működik. Például két lista1 és lista2 – mindegyik n hosszú – csak akkor egyenlő, ha a lista1[i] == lista2[i] i-hez a 0,1,2,3,..n-1}-ben.
Íme egy példa:
list1 = [2,4,6,8] list2 = [2,4,6,9] list1 != list2 # Output: True
A fenti példában a lista1 és a lista2 csak egy elemben különbözik. És a nem egyenlő != operátor a vártnak megfelelően igazat ad vissza.
Python Not Equal Operator használata feltételes feltételekben
Gyakran használja a nem egyenlő operátort a Python feltételrendszer részeként.
Például az alábbi kódrészlet megmutatja, hogyan ellenőrizheti, hogy egy szám páratlan-e vagy sem.
Az a szám, amely nem osztható egyenlően 2-vel, páratlan. Ez pedig a num%2 != 0 feltételre redukálódik.
num = 7 if(num%2 != 0): print("The number is odd.") else: print("The number is even.") # Output: The number is odd.
A feltételes feltételeket is használhatja felsorolja a megértéseket amikor csak azokat a listaelemeket szeretné megtartani, amelyek megfelelnek egy adott feltételnek. Az alábbi példában a páratlan_10 a 10-nél kisebb páratlan számok listája.
odd = [num for num in range(10) if num%2 != 0] print(odd) # Output: [1, 3, 5, 7, 9]
És ezzel befejeztük a nem egyenlő (!=) operátorról szóló vitánkat.✅
Ahogy azt már sejteni lehetett, az egyenlő operátor a nem egyenlő operátor ellentétes hatását váltja ki.
A következő részben többet megtudhat róla.
Python Equal Operator Syntax
Íme a Python egyenlő operátorának szintaxisa:
<obj1> == <obj2> #where <obj1> and <obj2> are valid Python objects
- Igaz értéket ad vissza, ha az obj1 és az obj2 értéke egyenlő, és
- ellenkező esetben False-t ad vissza.
Python Equal operátorkód példák
Az egyenlő operátor (==) nagyon hasonlóan használható a nem egyenlő operátorhoz.
Kódoljuk a következő példákat:
- annak ellenőrzésére, hogy két karakterlánc egyenlő-e,
- annak ellenőrzésére, hogy egy szám páros-e, és
- feltételes feltételt használni a listaértésben
A Python Not Equal operátor használata az összehasonlításhoz
Az alábbi kódrészletben az str1 és str2 értéke egyenlő. Tehát az egyenlő operátor (==) igazat ad vissza.
str1 = "coding" str2 = "coding" str1 == str2 # Output: True
Python Equal operátor
Használjuk most az egyenlő operátort egy feltételes kifejezésben.
Megjegyzés: A 2-vel egyenletesen osztható szám páros. És a kódban ez a következő feltételre redukálódik: num%2 == 0
num = 10 if(num%2 == 0): print("The number is even.") else: print("The number is odd.") # Output: The number is even.
Most építsünk erre a példára, és használjuk a Python listaértelmezését, hogy minden páros szám 10-nél kisebb legyen.
even_10 = [num for num in range(10) if num%2 == 0] print(even_10) # Output: [0, 2, 4, 6, 8]
A fenti példában
- A range(10) egy tartományobjektumot ad vissza, amelyen keresztül lehet hurkolni, hogy minden 0 és 9 közötti egész számot megkapjon.
- A num%2 == 0 feltétel csak páros számok esetén igaz.
- Tehát a páros_10 a 10-nél kisebb páros számok listája.
Eddig megtanulta, hogyan ellenőrizze az egyenlőséget a nem egyenlő (!=) és egyenlő (==) operátorok használatával.
A következő részben megtudhatja, hogyan ellenőrizheti két objektum azonosságát. Ellenőrizheti, hogy két Python-objektum azonos-e.
A Python használata operátorok és nem
Ha kezdő vagy a Python programozásban, lehetséges, hogy összekeveredsz az == és az is operátorok között. Tisztázzuk ezt ebben a részben.
Az előző részben volt egy példa, ahol str1 és str2 ahol egyenlő, és az == operátor True értéket adott vissza.
Most futtassa a következő kódrészletet.
str1 = "coding" str2 = "coding" str1 is str2 # Output: False
Látható, hogy az str1 értéke az str2 értéke False.
Tegyünk egy lépést hátra, és értsük meg, mit csinál a Python operátora.
Az is operátor bármely két Python objektumon működik.
És csak akkor adja vissza a True értéket, ha a két objektum azonos – vagyis ugyanarra az objektumra hivatkoznak a memóriában.
Bár az str1 egyenlő az str2-vel, az str1 nem str2, mivel két különböző objektumra mutatnak a memóriában. És ezért eltérő identitásúak.
== és az NEM ugyanaz
Pythonban használhatja a id() függvényt az objektum azonosságának beszerzéséhez.
▶ Futtassa a következő kódcellát, hogy megkapja az str1 és str2 azonosságát.
id(str1) # Sample output: 139935398870320 id(str2) # Sample output: 139935398871344
Amint láthatja, az str1 és str2 eltérő azonossággal rendelkezik. Az str1 pedig az str2 a várt módon False értéket ad vissza.
Összerakva,
<obj1> is <obj2> # returns True if and only if id(<obj1>) == id(<obj2>) # returns True
Gyorsan ellenőrizzük ezt a képen látható módon:
str1 = "coding" str2 = str1 print(str1 is str2) print(id(str1) == id(str2)) # Output True True
Intuitív módon a not operátor az is operátor ellenkezőjét teszi.
Az is not operátor bármely két Python objektumon működik.
És csak akkor adja vissza a False értéket, ha a két objektum azonos – vagyis ugyanarra az objektumra hivatkoznak a memóriában. Ellenkező esetben igazat ad vissza.
A fenti kódpéldákban próbálja meg lecserélni az is-t nem-re, és ellenőrizze az eredményeket.
Következtetés 👩💻
Remélem hasznosnak találta ezt az oktatóanyagot.
Összefoglalva, megtanulta:
- hogyan használhatjuk az egyenlő (==) és nem egyenlő (!=) operátorokat annak ellenőrzésére, hogy két Python objektum azonos értékű-e,
- a különbség a Python objektumok egyenlősége és azonossága között, ill
- Hogyan működik a Python és a nem operátorok, amelyek segítenek annak ellenőrzésében, hogy két Python-objektum azonos-e.
Itt megtudhatja, hogyan számíthat ki időkülönbséget, vagy hogyan készíthet kígyójátékot pythonban.
Találkozunk a következő oktatóanyagban. Addig is jó tanulást és kódolást!🎉