Operatorên mentiqî yên Python û, an, û ne (pêwendiya mantiqî, veqetandin, negatîf)

Dikan

Python operatorên mentiqî peyda dike ku karên mantiqî (Boolean) bikin.(and,or,not)
Ew ji bo danasîna pêwendiya di navbera pir şertan de di daxuyaniyek if de tê bikar anîn.

Ev beş tiştên jêrîn diyar dike.

  • xaç:and
  • lêzêdekirina mantiqî:or
  • înkarî:not
  • and,or,notPêşengiya operator

Wekî din, xalên jêrîn wekî hişyariyê têne rave kirin.

  • Operatorên mantiqî ji bo tiştên cureyê ji bilî bool
  • and,orVan nirxên vegerê ne hewce ne ji celebê boolê ne.
  • Têkiliya kurt (nirxandina dorhêla kurt)

xaç:and

û berhema mentiqî ya du nirxan vedigerîne.

print(True and True)
# True

print(True and False)
# False

print(False and True)
# False

print(False and False)
# False

Bi rastî, ew pir caran ne ji bo rast an xelet, lê ji bo bêjeyên şertî yên ku operatorên berhevdanê bikar tînin tê bikar anîn. Ji bo agahdariya we, operatorên berhevdanê wiha ne.

  • <
  • >
a = 10
print(0 < a)
# True

print(a < 100)
# True

print(0 < a and a < 100)
# True

û dikare wekî jêrîn were girêdan.

print(0 < a < 100)
# True

lêzêdekirina mantiqî:or

an jî OR-ya mentiqî ya du nirxan vedigerîne.

print(True or True)
# True

print(True or False)
# True

print(False or True)
# True

print(False or False)
# False

înkarî:not

ne” redkirina nirxê vedigerîne; rast û derew berevajî dibin.

print(not True)
# False

print(not False)
# True

and,or,notPêşengiya operator

Rêza pêşîn a van operatorên mentiqî wiha ye: ne ya herî bilind e.

  1. not
  2. and
  3. or

Di koda nimûneya jêrîn de, îfadeya jorîn wekî ya jêrîn tê şîrove kirin. Ji ber ku di nav parantezên zêde de pirsgirêk tune ye, dibe ku di rewşên mîna vê nimûneyê de zelalkirina wan hêsantir be.

print(True or True and False)
# True

print(True or (True and False))
# True

Heke hûn dixwazin bixebitin an berî û, parantezê bikar bînin().

print((True or True) and False)
# False

<,>Van operatorên berawirdkirinê ji nebûnê hîna pêşdatir in. Ji ber vê yekê, wekî ku di mînaka li jor de bû, ji bo her operasyona berhevdanê ne pêdivî ye ku parantez hebe.

print(0 < a and a < 100)
# True

Ji bo kurteya pêşengiya operatorê di Python de belgeya fermî ya jêrîn bibînin.

Operatorên mantiqî ji bo tiştên cureyê ji bilî bool

With these logical operators, not only bool types (true, false), but also numbers, strings, lists, etc. are processed as boolean values.

Tiştên jêrîn di operasyonên mantiqî yên Python de derew têne hesibandin.

  • Berdewam têne diyarkirin ku derew in:None,false
  • Di cureyên hejmarî de sifir:0,0,0j,Decimal(0),Fraction(0, 1)
  • Rêzek an berhevoka vala:',(),[],{},set(),range(0)

Hemî nirxên din rast têne hesibandin.

Fonksiyona bool() dikare were bikar anîn da ku nirxa boolê ya tiştekê bi dest bixe. Bala xwe bidinê ku rêzika ‘0’ an ‘False’ rast tê hesibandin.

print(bool(10))
# True

print(bool(0))
# False

print(bool(''))
# False

print(bool('0'))
# True

print(bool('False'))
# True

print(bool([]))
# False

print(bool([False]))
# True

Ji bo ku ‘0’ an jî ‘derew’ di rêzekê de wekî xelet were destnîşankirin, distutils.util.strtobool() bikar bînin.

and,orVan nirxên vegerê ne hewce ne ji celebê boolê ne.

Li vir mînakek tiştek ji bilî celebek boolê ye, ku encama her operator li ser nirxek hejmarî nîşan dide.

x = 10  # True
y = 0  # False

print(x and y)
# 0

print(x or y)
# 10

print(not x)
# False

Wekî ku hûn ji mînaka li jor dibînin, û û an di Python de rast an xelet ji celebê bool venagerin, lê nirxa li çepê an rastê li gorî rast e an xelet vedigerînin. Nimûne hejmar e, lê heman tişt ji bo celebên din ên wekî rêz û navnîşan derbas dibe. Bi rasthatinî, ne rast an derewîn ji celebê bool vedigere.

Pênaseyên nirxên vegerê yên û û an jî wiha ne.

The expression x and y first evaluates x; if x is false, its value is returned; otherwise, y is evaluated and the resulting value is returned.

The expression x or y first evaluates x; if x is true, its value is returned; otherwise, y is evaluated and the resulting value is returned.

6.11. Boolean operations — Expressions — Python 3.10.1 Documentation

Gava ku nirxên vegotinên çep û rast ji hev cuda rast û derew in, nirxên vegerê hêsan têne fêm kirin. Ji hêla din ve, heke her du jî rast bin an her du jî derew in, dê nirxa vegerê li gorî fermanê cûda be.

Ger hûn wê wekî vegotinek şertî di bêjeyek if de, hwd. de bikar bînin, encam wekî nirxek boolean tê hesibandin û pêvajoy kirin, ji ber vê yekê hûn ne hewce ne ku li ser wê xemgîn bibin, lê heke hûn nirxa vegerê ji bo pêvajoyek din bikar bînin, hûn pêdivî ye ku baldar be.

x = 10  # True
y = 100  # True

print(x and y)
# 100

print(y and x)
# 10

print(x or y)
# 10

print(y or x)
# 100
x = 0  # False
y = 0.0  # False

print(x and y)
# 0

print(y and x)
# 0.0

print(x or y)
# 0.0

print(y or x)
# 0

print(bool(x and y))
# False

Heke hûn dixwazin wê wekî rast an derewîn derman bikin, hûn dikarin wekî mînaka paşîn bikin.
bool(x and y)

Nirxên vegerê yên û û an di tabloya jêrîn de têne kurt kirin.

xyx and yx or y
truefalseyx
falsetruexy
truetrueyx
falsefalsexy

Têkiliya kurt (nirxandina dorhêla kurt)

Wekî ku hûn ji tabloya li jor dibînin, heke x di x û y de xelet be, an heke x di x an y-yê de rast be, nirxa vegerê bêyî nirxa y-yê x be.

Di rewşeke wiha de y nayê nirxandin.

and,orHişyar bikin ku heke hûn li milê rastê yê van pêvajoyan gazî fonksiyonek an rêbazek bikin ku hin pêvajoyê bikin, dibe ku pêvajo li gorî encama li milê çepê neyê darve kirin.

def test():
    print('function is called')
    return True

print(True and test())
# function is called
# True

print(False and test())
# False

print(True or test())
# True

print(False or test())
# function is called
# True
Copied title and URL