V tomto článku sa na to pozrieme != (Nerovnaké) operátory. V Pythone != je definovaný ako nerovná sa operátor. Vracia sa Pravda ak sa operandy na oboch stranách navzájom nerovnajú, a vráti Nepravdivé ak sú si rovní. Zatiaľ čo nie je operátor kontroluje, či je id() dvoch objektov rovnaké alebo nie. Ak je to isté, vráti sa Nepravdivé a ak nie rovnaké, vráti sa Pravda. A nie je operátor vráti hodnotu True, ak sa operandy na oboch stranách navzájom nerovnajú, a vráti hodnotu false, ak sa rovnajú.
Poďme pochopiť pojmy jeden po druhom:
Príklad 1:
Python3
a> => 10> b> => 10> > print> (a> is> not> b)> print> (> id> (a),> id> (b))> > c> => 'Python'> d> => 'Python'> print> (c> is> not> d)> print> (> id> (c),> id> (d))> > e> => [> 1> ,> 2> ,> 3> ,> 4> ]> f> => [> 1> ,> 2> ,> 3> ,> 4> ]> print> (e> is> not> f)> print> (> id> (e),> id> (f))> |
>
>
Výkon:
False 140733278626480 140733278626480 False 2693154698864 2693154698864 True 2693232342792 2693232342600>
Vysvetlenie:
- Najprv s celočíselnými údajmi bol výstup nepravdivý, pretože obe premenné a, b sa vzťahujú na rovnaké údaje 10.
- Po druhé s údajmi o reťazci bol výstup nepravdivý, pretože obe premenné c, d odkazujú na rovnaké údaje Pythonu.
- Po tretie s údajmi zo zoznamu bol výstup pravdivý, pretože premenné e, f majú rôzne adresy pamäte. (Aj keď obe premenné majú rovnaké údaje)
Príklad 2:
!= je definovaný ako nerovná sa operátor. Vracia sa Pravda ak sa operandy na oboch stranách navzájom nerovnajú, a vráti Nepravdivé ak sú si rovní.
Python3
# Python3 code to> # illustrate the> # difference between> # != and is operator> > a> => 10> b> => 10> print> (a !> => b)> print> (> id> (a),> id> (b))> > c> => 'Python'> d> => 'Python'> print> (c !> => d)> print> (> id> (c),> id> (d))> > e> => [> 1> ,> 2> ,> 3> ,> 4> ]> f> => [> 1> ,> 2> ,> 3> ,> 4> ]> print> (e !> => f)> print> (> id> (e),> id> (f))> |
ako vrátiť pole v jave
>
>
Výkon:
False 140733278626480 140733278626480 False 2693154698864 2693154698864 False 2693232369224 2693232341064>
Príklad 3:
The != operátor porovnáva hodnotu alebo rovnosť dvoch objektov, zatiaľ čo Python nie je operátor kontroluje, či dve premenné ukazujú na rovnaký objekt v pamäti.
Python3
# Python3 code to> # illustrate the> # difference between> # != and is not operator> # [] is an empty list> list1> => []> list2> => []> list3> => list1> > #First if> if> (list1 !> => list2):> > print> (> ' First if Condition True'> )> else> :> > print> (> 'First else Condition False'> )> > #Second if> if> (list1> is> not> list2):> > print> (> 'Second if Condition True'> )> else> :> > print> (> 'Second else Condition False'> )> > #Third if> if> (list1> is> not> list3):> > print> (> 'Third if Condition True'> )> else> :> > print> (> 'Third else Condition False'> )> > list3> => list3> +> list2> > #Fourth if> if> (list1> is> not> list3):> > print> (> 'Fourth if Condition True'> )> else> :> > print> (> 'Fourth else Condition False'> )> |
>
>
Výkon:
First else Condition False Second if Condition True Third else Condition False Fourth if Condition True>
Vysvetlenie:
- Výstup z najprv ak podmienka je False, keďže zoznam1 aj zoznam2 sú prázdne zoznamy. Po druhé, ak podmienka zobrazuje hodnotu True, pretože dva prázdne zoznamy sú na rôznych miestach pamäte. Zoznam1 a zoznam2 teda odkazujú na rôzne objekty. Môžeme to skontrolovať pomocou funkcie id() v pythone, ktorá vracia identitu objektu.
- Výstup z tretí ak podmienka je False, keďže zoznam1 aj zoznam3 ukazujú na rovnaký objekt.
- Výstup z štvrtý ak podmienka je True, pretože zreťazením dvoch zoznamov sa vždy vytvorí nový zoznam.