Мазмунга өтүү

enum менен санап көрсөтүүлөр

Сабактын башталышы

enum менен санап көрсөтүүлөр (перечисления)

Тандоолордун туруктуу топтомун чачыранды саптардын же сандардын ордуна аталган константалар катары моделдеңиз

Негизги идея: санап көрсөтүү (enum) — бул класс, анын экземплярлары константалык маанилердин туруктуу, аталган топтомун түзөт: буйрутманын статустары, колдонуучунун ролдору, светофордун түстөрү же карта масттары. Кодуңузда "paid" сыяктуу жылаңач саптарды же 2 сыяктуу сыйкырдуу сандарды чачыратуунун ордуна, сиз бир жолу Status.PAID деп аныктайсыз жана топтомдун жабык, өзүн-өзү документтештирген жана салыштырууга коопсуз экенине Python кепилдик берет.
Аягында сиз төмөнкүлөрдү жасай аласыз:
  • жылаңач сап/сан константалары эмне үчүн морт экенин түшүндүрүү,
  • enum.Enum менен санап көрсөтүүнү аныктоо жана элементтин .name жана .value касиеттерин окуу,
  • элементтерди is аркылуу коопсуз салыштыруу жана элементтер эмне үчүн синглтон экенин түшүнүү,
  • auto() менен Python-го маанилерди автоматтык түрдө берүүгө уруксат берүү,
  • элемент бүтүн сан катары иштеши керек болгондо IntEnum колдонуу,
  • элементти мааниси боюнча (Color(1)) же аты боюнча (Color['RED']) табуу жана бүт топтомду айланып чыгуу.

1. Жылаңач константалардын көйгөйү

Тандоолордун туруктуу топтомдору бардык жерде кездешет: буйрутма "pending", "paid" же "shipped" болот; колдонуучу "admin" же "member" болот. Жөнөкөй ыкма — бул маанилерди кодго түздөн-түз кадимки саптар же сандар катары жазуу, б.а. сыйкырдуу маанилер.

status = "shiped"          # ката! бир азга чейин эч ким даттанбайт
if status == "shipped":    # эч качан дал келбейт -> тынч ката
    send_tracking_email()

Эч нерсе "shiped" катасын кармабайт. Салыштыруу тынч эле False кайтарат, кат эч качан жөнөтүлбөйт. Жылаңач константалардын үч алсыздыгы бар:

  • Коопсуздук жок: ката жазылган сап дагы эле жарактуу сап, ошондуктан каталар жазуу учурунда эмес, аткаруу учурунда чыгат.
  • Өзүн-өзү документтештирүү жок: if role == 2: ичиндеги кокус 2 окурманга 2 эмнени билдирерин айтпайт.
  • Жабык топтом жок: программанын башка бөлүгүнүн төртүнчү күтүлбөгөн статусту ойлоп табуусуна эч нерсе тоскоол болбойт.

Санап көрсөтүү үчөөнү тең бир заматта чечет: аттар текшерилет, документ сыяктуу окулат, ал эми жарактуу маанилердин топтому так бир жерде аныкталат.

Бул сабакты YourAIZone платформасында улантыңыз

Толук сабакта — толук түшүндүрмө, чыгарылган мисалдар, көп кездешкен каталар, заматта текшерилүүчү тесттер жана ЖИ-репетитор. Конок катары дароо баштаңыз же прогрессти сактоо үчүн аккаунт түзүңүз.

Толук сабакта

  • Толук түшүндүрмө
  • Чыгарылган мисалдар
  • Көп кездешкен каталар жана алардан кантип качуу керек
  • Тест суроолору: 15
  • Тема боюнча суроолорго жооп берген ЖИ-репетитор
  • Окуучу, ата-эне жана мугалим үчүн прогрессти көзөмөлдөө