logo

enum Python valodā

Uzskaitījumi programmā Python tiek ieviesti, izmantojot moduli ar nosaukumu enum . Uzskaitījumi tiek veidoti, izmantojot klases . Enums ir vārdi un vērtības saistīti ar tiem. Apskatīsim dažādus jēdzienus Python Enum šajā rakstā.

Kas ir enumi un kāpēc tie ir noderīgi?

Enumerations vai Enums ir simbolisku nosaukumu kopa, kas saistīta ar unikālām vērtībām. To var atkārtot, lai atgrieztu tā kanoniskos elementus definīciju secībā. Tas nodrošina veidu, kā izveidot lasāmāku un pašdokumentējošu kodu, izmantojot jēgpilnus nosaukumus, nevis patvaļīgas vērtības.



Enum īpašības

  • Enums var tikt parādīts kā virkne vai repr.
  • Enumu veidus var pārbaudīt, izmantojot tips () .
  • The nosaukums atslēgvārds tiek izmantots, lai parādītu enum dalībnieka vārdu.

Kādas ir Enum priekšrocības

Dažas no enumu izmantošanas priekšrocībām ir šādas:

  • Apkopes vienkāršība: Enums centralizē nosaukumu vērtību definīciju, kas atvieglo vērtību kopas jaunināšanu vai paplašināšanu atbilstoši mūsu prasībām.
  • Lasāmība un pašdokumentācija: Enums sniedz jēgpilnus nosaukumus vērtībām, padarot kodu cilvēkiem saprotamāku un saprotamāku.
  • Tipa drošība : Enums nodrošina zināmu tipa drošības līmeni, nodrošinot, ka var izmantot tikai derīgas vērtības.
  • Samazināts kļūdu risks : Enums palīdz novērst nepareizu vai nekonsekventu vērtību izmantošanu kodā, samazinot kļūdu un kļūdu risku.

Enum klase Python

Python kods uzskaitījumu demonstrēšanai

Šis kods definē uzskaites klasiSeason>ar četriem dalībniekiem: PAVASARIS, VASARA, RUDENS un ZIEMA. Tajā ir parādītas galvenās enum īpašības, piemēram, piekļuve enum dalībniekam, tā nosaukums un vērtība. Turklāt tas parāda, kā iegūt visu enum dalībnieku sarakstu. Izvade atspoguļo nosaukumu, vērtību, veidu un visu sarakstuSeason>enum dalībnieki.



Python3






from> enum>import> Enum> class> Season(Enum):> >SPRING>=> 1> >SUMMER>=> 2> >AUTUMN>=> 3> >WINTER>=> 4> print>(Season.SPRING)> print>(Season.SPRING.name)> print>(Season.SPRING.value)> print>(>type>(Season.SPRING))> print>(>repr>(Season.SPRING))> print>(>list>(Season))>

>

>

Izvade:

Season.SPRING SPRING 1   [, , , ]>

Piekļuve režīmiem

Enum dalībniekiem var piekļūt divos veidos:

  • Pēc vērtības :- Šajā metodē tiek nodota enum dalībnieka vērtība.
  • Pēc vārda :- Šajā metodē tiek nodots enum dalībnieka vārds.

Atsevišķai vērtībai vai nosaukumam var piekļūt arī, izmantojot nosaukums vai vērtību atslēgvārds.

Kods definē uzskaites klasi ' Season'> ar četriem dalībniekiem. Tajā ir parādīts, kā piekļūt enum dalībniekiem pēc vērtības un nosaukuma. Tas parāda, ka varat iegūt enum dalībnieku, norādot tā vērtību vai nosaukumu, un pēc tam attiecīgi piekļūt tā nosaukumam vai vērtībai. Šis kods sniedz piemērus gan uz vērtību, gan uz vārdu balstītai enum dalībnieka piekļuvei.

Python3




from> enum>import> Enum> class> Season(Enum):> >SPRING>=> 1> >SUMMER>=> 2> >AUTUMN>=> 3> >WINTER>=> 4> print>(>'The enum member associated with value 2 is : '>, Season(>2>).name)> print>(>'The enum member associated with name AUTUMN is : '>, Season[>'AUTUMN'>].value)>

>

>

Izvade:

The enum member associated with value 2 is : SUMMER The enum member associated with name AUTUMN is : 3>

Uzskaitījumi ir atkārtojams . Tos var atkārtot, izmantojot cilpas

Šajā piemērā mēs izmantosim cilpa lai izdrukātu visus Enum klases dalībniekus.

Kods definē uzskaites klasi ' Season'> ar četriem dalībniekiem. Tas atkārto enum dalībniekus un izdrukā to vērtības un nosaukumus. Izvadē tiek parādīta katra enum dalībnieka vērtība un tā pilnībā kvalificētais nosaukums, nodrošinot veidu, kā strādāt ar un parādīt enum vērtības.

Python3




from> enum>import> Enum> class> Season(Enum):> >SPRING>=> 1> >SUMMER>=> 2> >AUTUMN>=> 3> >WINTER>=> 4> for> season>in> (Season):> >print>(season.value,>'-'>,season)>

>

>

Izvade:

shloka mehta
1 - Season.SPRING 2 - Season.SUMMER 3 - Season.AUTUMN 4 - Season.WINTER>

Uzskaitījumu atbalsts H pārpelnot

Šajā piemērā mēs parādīsim, kā lietotāji var jaukt Enum klasi, kurā var izmantot vārdnīcas vai komplekti .

Šis kods izmanto ' enum'> moduli, lai definētu uzskaites klasi ' Animal'> ar trim dalībniekiem: suni, kaķi un lauvu. Pēc tam tiek izveidota vārdnīcadi>un piešķir tai vērtības, pamatojoties uz enum dalībniekiem. Visbeidzot, tā pārbauda, ​​vai vārdnīca atbilst noteiktam atslēgu un vērtību pārim.

Python3




import> enum> class> Animal(enum.Enum):> >dog>=> 1> >cat>=> 2> >lion>=> 3> di>=> {}> di[Animal.dog]>=> 'bark'> di[Animal.lion]>=> 'roar'> if> di>=>=> {Animal.dog:>'bark'>, Animal.lion:>'roar'>}:> >print>(>'Enum is hashed'>)> else>:> >print>(>'Enum is not hashed'>)>

>

>

Izvade:

Enum is hashed>

Salīdziniet Enums programmā Python

Uzskaitījumi atbalsta divu veidu salīdzinājumus, kas ir:

  • Identitāte :- Tie tiek pārbaudīti, izmantojot atslēgvārdus ir un nav .
  • Vienlīdzība :- Vienlīdzības salīdzinājumi == un != tiek atbalstīti arī veidi.

Šis kods definē uzskaites klasiAnimal>izmantojotenum>modulis ar trim dalībniekiem: suns, kaķis un lauva. Pēc tam tā veic enum dalībnieku salīdzinājumus, lai pārbaudītu vienlīdzību un nevienlīdzību.

Python3




import> enum> class> Animal(enum.Enum):> >dog>=> 1> >cat>=> 2> >lion>=> 3> if> Animal.dog>is> Animal.cat:> >print>(>'Dog and cat are same animals'>)> else>:> >print>(>'Dog and cat are different animals'>)> if> Animal.lion !>=> Animal.cat:> >print>(>'Lions and cat are different'>)> else>:> >print>(>'Lions and cat are same'>)>

>

>

Izvade:

Dog and cat are different animals Lions and cat are different>