⊗pyPmFnSN 4 of 129 menu

Պայթոնում տեսանելիության տիրույթների աշխատանքի նրբությունները

Դիտարկենք լոկալ և գլոբալ փոփոխականների աշխատանքի կարևոր նրբությունները:

Ենթադրենք ունենք num գլոբալ փոփոխական: Ստեղծենք func ֆունկցիա, որը կոնսոլում կտպի գլոբալ num փոփոխականը:

num = 1 def func(): print(num) func() # կտպի 1

Այժմ ֆունկցիայի print տողից ցածր հայտարարենք լոկալ num: Կոդի կատարումից հետո կոնսոլում կհայտնվի սխալ: Դա տեղի է ունենում, քանի որ Պայթոնը ֆունկցիայի ներսում num-ը ընկալում է որպես լոկալ փոփոխական, որը դեռ հայտարարված չէ:

num = 1 def func(): print(num) # կտպի սխալ num = 2

Այժմ վերագրենք ֆունկցիայի ներսում գտնվող կոդը այնպես, որ num փոփոխականի արժեքը մեծանա 2-ով:

num = 1 def func(): num += 2 # կտպի սխալ

Սխալը պայմանավորված է նրանով, որ num += 2 արտահայտությունը ներկայացնում է հետևյալ գրառումը:

num = num + 2

Սակայն լոկալ փոփոխականը, որին գումարում են կատարում, դեռ հայտարարված չէ: Եվ, համապատասխանաբար, Պայթոնը տպում է սխալ, քանի որ անհնար է թիվ գումարել գոյություն չունեցող արժեքին:

Ինչ կլինի հետևյալ կոդի կատարման արդյունքը.

tst = '12' def func(): tst = 12 return tst print(tst)

Ինչ կլինի հետևյալ կոդի կատարման արդյունքը.

tst = 'abc' def func(): tst = tst.upper() return tst func() print(tst)

Ինչ կլինի հետևյալ կոդի կատարման արդյունքը.

tst = 'abc' def func(): txt = tst.upper() return txt print(func()) print(tst)
Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել