Атрибут, аргууд

Python хэл олон төрлийн програмчлалын арагчлалыг дэмждэг. Өнөө үед маш өргөн дэлгэрсэн ОХП аргачлалыг Python -д маш энгийн, ойлгомжтой байдлаар оруулан ирсэн. Хичээлээр классийн шинж, аргууд гэж юу болохыг тоглоомын баатрын жишээгээр авч үзье.

1-р нүдэнд үүсгэсэн Character бол тоглоомын баатруудын класс бөгөөд байгуулагч аргаар утга олгогдож буй race, damage, armor атрибутууд бол хувийн буюу instance түвшингийнх. Өөрөөр хэлбэл хэрэглэгчийн код Character төрлийн хувьсагчийг үүсгэсний дараа л хандаж болох атрибутууд гэсэн үг. Классийн түвшингийн атрибутуудыг зарлахдаа байгуулагч аргатай ижил түвшинд тодорхойлон өгдөг. Character классийн max_speed,  dead_health бол классийн түвшингийн атрибутууд юм. Хувийн болон классийн түвшинд тодорхойлогдсон атрибутуудийн ялгааг 2, 3, 4 -р нүдний жишээнүүдэд харуулсан. 2 - р нүдний жишээнд Character классийн хувийг үүсгэлгүй классийн түвшингийн шинжид классийн нэрээр дамжин хандахад түүний утгыг буцаасан байгаа. Харин хувийн түвшингийн race шинжид классийн нэрээр дамжин хандах гэвэл алдаа өгөхийг 3 -р нүдний жишээ харуулна. 4-р нүдэнд Character классийн хувийг үүсгэн unit хувьсагчид олгосны дараа хувьсагчаар дамжин аль ч түвшингийн шинжид хандаж болохыг харуулсан.
Класст үйлдэлд буюу аргыг тодорхойлж болохыг

жишээгээр харцгаая. Арга тодорхойлохын тулд Character классийн байгуулагч аргад баатрын амины хувийн health атрибутийг нэмсэн. Атрибутад параметрээр дамжин утга олгогдохгүй шууд заан өгсөн. Дараа нь баатрыг цохиход түүний амины хэмжээг багасах hit, баатрын амьд эсэхийг шалгах is_dead аргыг нэмэн өгсөн. Хувийн түвшингийн аргад бүр эхний аргументээр self -ийг авдаг. is_dead аргад баатрын амины хэмжээг тэгтэй харьцуулж болох ч классийн түвшинд үүсгэсэн dead_health атрибутийг ашигласан. Атрибутийг шууд dead_health нэрээр нь эсхүл кодод бичигдсэн хэлбэрээр ашиглах боломжтой. Гэхдээ Character.dead_health гэж ашиглах нь кодийг илүү ойлгомжтой болгон өгнө. 2 - р нүдэнд классийн хувийг үүсгээд hit аргыг 20 параметртэй дуудаад баатрын амины хэмжээг хэвлээд баатар амьд эсэхийг шалгах is_dead аргыг дуудахад 80, False утгыг өгнө. Аргуудын логикоор ийм ч хариу өгөх ёстой. 3 -р нүднйи жишээ өмнөхтэй ижил. Python -нд private төрлийн атрибут гэж байдаггүй. Классын хувийн атрибутын утгыг заавал аргаар дамжуулан өөрчлөх албагүйг 4 - р нүдний жишээ харуулна. Шууд хувийн холбоосыг хадгалах хувьсагчаар дамжуулан атрибутын утгыг өөрчилж болно. C#, Java хэлүүдийнх шиг private төрлийн атрибутууд python -нд байдаггүй ч атрибутуудыг нуух боломж байдгийг дараагийн хичээлээр авч үзнэ.

Мэдээлэл таалагдсан бол найзуудтайгаа хуваалцаарай.

  Нээгдсэн тоо: 361 Төлбөртэй

Обьект хандалгат програмчлалын технологид нэг ба түүнээс дээш абстракт аргуудыг агуулсан классийг абстракт класс гэж нэрлэдэг. Абстракт арга гэдэг нь абстракт класст тодорхойлогдсон боловч удамшиж буй классууд заавал хэрэгжүүлэлтийг тодорхойлох ёстой тусгай декораттороор тэмдэглэсэн аргууд юм. Python абстракт классуудийг дэмжих дотоод механизмгүй бөгөөд энэ зорилгод abc (Abstract Base Class) тусгай модулийг ашигладаг. Абстракт классийн жишээг харцгаая.

  Нээгдсэн тоо: 434 Нийтийн

Хичээлээр dunder method буюу "шидэт арга" -ын талаар авч үзье. dunder гэдэг нь хоёр доогуур зураас бөгөөд эдгээр тэмдэгтээр тэмдэглэгдсэн аргуудыг "шидэт арга" буюу тусгай арга гэж нэрлэдэг. Ийм аргуудыг хэрэглэгчийн кодод дахин тодорхойлон ажиллагааны логикийг өөрчлөх боломж байдаг. Асуудлыг дараах

жишээгээр авч үзье.

  Нээгдсэн тоо: 1329 Нийтийн

Өмнөх хичээлүүдэд сурсан логик шалгалт, циклийн мэдлэгээ ашиглан програмчлалын стандарт жишээ "Тоог таа" энгийн тоглоомын програмыг бичье. Тоглоомын логик нь компьютер 1 -50 -ын хооронд санамсаргүй байдлаар сонгосон тоог хэрэглэгч 6 удаагийн оролдлогоор олох юм. Та програмийн кодийг өмнөх хичээлүүдээр сурсан бүтцүүдийг ашиглан бичих гээд үзээрэй.

Санамж: Тавигдсан асуудлын шийдлийг өөрөө олон кодлож сурахыг байнга эрмэлзэх хэрэгтэй. Ер нь програм бүтээх бол олон чиглэлийн мэрэгжилтнүүдийн хамтын ажил байдаг. Бид програмчлалийн python хэлийг судалж байгаа тул кодлогчдод тавигдах асуудлыг хэрхэн шийдэхэд л анхааран бэлэн алгоритм бүхий энгийн "Тоог таа" тоглоомыг сонгосон хэрэг.

  Нээгдсэн тоо: 957 Төлбөртэй

Програмчлалын хэл бүхэнд дотоод буюу интерпретатор эсхүл компилятор өөртөө багтаасан функцууд байдаг. Өөрөөр хэлбэл эдгээр дотоод функцууд хэлний үндсэн боломжид багтсан тул тэдгээрийг ашиглахад ямар нэгэн нэмэлт сан суулгах шаардлагагүй гэсэн үг. Python -нд нилээд тооны дотоод функцууд байдгаас заримыг өмнөх хичээлүүдэд ашигласан. Хичээлээр Python -ий дотоод функцуудээс хамгийн өргөн ашигладаг хэсгийг авч үзье.

Санамж: Програмчлалын хэлийг эзэмшихэд таниас нилээдгүй хүчин чармайлтыг шаардана. Сайтын хичээлүүд нь гарааны буюу үндсэн суурийг нэг дороос цаг алдалгүй судлах, нэмэлт зүйлүүдийг өөрсдөө бие даан сурахад туслах зорилготой. Аливаа зүйлийг сурахын тулд аль болохоор эрт, цаг алдалгүй, идэвхитэй оролдох хэрэгтэй.

Лямбда-илэрхийлэл нь нэргүй аргын хураангуй бичилтийг илэрхийлнэ. Лямбда-илэрхийлэл утга буцаадаг, буцаасан утгыг өөр аргын…

Нээгдсэн тоо : 132

 

Кодийн сайжруулалт /рефакторинг/ хичээлээр програмийн кодоо react -ийн зарчимд нийцүүлэн компонентод салгасан.…

Нээгдсэн тоо : 194

 

Хадгалагч (Memento) хэв обьектын дотоод төлвийг түүний гадна гаргаж дараа нь хайрцаглалтын зарчмыг зөрчихгүйгээр обьектыг сэргээх боломжийг олгодог.

Нээгдсэн тоо : 197

 

Делегаттай нэргүй арга нягт холбоотой. Нэргүй аргуудыг делегатийн хувийг үүсгэхэд ашигладаг.
Нэргүй аргуудын тодорхойлолт delegate түлхүүр үгээр…

Нээгдсэн тоо : 218

 

Математикт харилцан урвуу тоонууд гэж бий. Ямар нэгэн тооны урвуу тоог олохдоо тухайн тоог сөрөг нэг зэрэг дэвшүүлээд…

Нээгдсэн тоо : 216

 

Төсөлд react-router-dom санг оруулан чиглүүлэгчдийг бүртгүүлэн тохируулсан Санг суулган тохируулах хичээлээр бид хуудас…

Нээгдсэн тоо : 296

 

Хуваах нь нэг тоо нөгөө тоонд хэдэн удаа агуулагдаж буй тодорхойлох арифметикийн үйлдэл.
Хуваалтыг нэг бус удаа…

Нээгдсэн тоо : 225

 

Зуучлагч (Mediator) нь олон тооны обьектууд бие биетэйгээ холбоос үүсгэхгүйгээр харилцан ажиллах боломжийг хангах загварчлалын хэв юм. Ингэснээр…

Нээгдсэн тоо : 219

 

Делегатууд хичээлд ухагдхууны талаар дэлгэрэнгүй үзсэн ч жишээнүүд делегатийн хүчийг бүрэн харуулж чадахааргүй байсан.…

Нээгдсэн тоо : 222

 
Энэ долоо хоногт

функц өгөгдөв.

  1. f(x) функцын x0=5 абсцисстай M цэгт татсан шүргэгч шулууны тэгшитгэл
  2. f(x) функцын график, дээрх шүргэгч шулуун болон координатын тэнхлэгүүдээр хүрээлэгдсэн дүрсийн талбай  
  3. f(x) функцын графикийг M цэгт шүргэх, төв нь OX (абсцисс) тэнхлэг дээр орших тойргийн тэгшитгэл

Нээгдсэн тоо : 2836

 

20 хувийн концентрацитай 18 гр уусмал дээр концентрацийг нь 4 хувиар нэмэгдүүлэхийн тулд 26 хувийн концентрацитай хичнээн грамм уусмал нэмж хийх шаардлагтай вэ?

Нээгдсэн тоо : 1272

 

тэгшитгэлийн шийдийг ол.

Нээгдсэн тоо : 1387