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.