Тусгай аргууд

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

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

1-р нүдэнд Point классийг тодорхойлсон. Point классийн __init__ арга ч бас "шидэт арга" бөгөөд классийн хувийг үүсгэх тусгай зориулалттай. 2-р нүдэнд Point классийн хувийг үүсгээд түүнийг print командад өгвөл хэрэглэгчид тийм тодорхой бус мэдээллийг үзүүлнэ. print командаар илүү ойлгомжтой мэдээллийг харуулах хэрэгтэй гэвэл класст

классийг мөр хэлбэрээр үзүүлэх __str__ аргыг дахин тодорхойлон өгдөг. Одоо 2-р нүдэнд Point классийн хувийг үүсгээд түүнийг print командад өгвөл классийн хувийн талаар илүү тодорхой мэдээллийг өгнө. Эндээс print команд өөрт нь дамжуулсан хувьсагчийн __str__ аргаас буцаах утгыг л үзүүлдэг гэсэн үг.

жишээг харцгаая. 2-р нүдэнд мөр үүсгээд түүний уртыг len дотоод функцээр тодорхойлсон. Гэтэл 3-р нүдэнд 1-р нүдэнд тодорхойлсон Road классийн хувийг үүсгээд түүний уртыг len дотоод функцээр тодорхойлох оролдлого хийвэл Road төрлийн обьектод len байхгүй гэсэн алдааг өгнө. Тэгвэл классын тодорхойлолтод

Атрибутын уртыг тооцон буцаах __len__ аргыг тодорхойлон түүнийг ашиглах боломжтой.
Хоёр доогуур зураасаар тэмдэглэсэн аргууд их олон байдаг ч ихэнхдээ __str__ аргыг голдуу дахин тодорхойлдог.
Python дээр хийдэг олон зүйлийг "шидэт арга" -аар хийж болохыг дараах

жишээнээс харж болно. 8-р нүдэнд 5+3 үйлдлийг ердийн аргаар харин 5 -р нүдэнд 5 утгатай x хувьсагчийн __add__ шидэт аргад 3 -ыг дамжуулан 5+3 үйлдлийг хийсэн. Харин 6 -р нүдэнд тодорхойлсон жагсаалтын 2 -р элементийг авахыг 7 -р нүдэнд __getitem__ аргаар дамжуулан авах жишээнүүдийг харууллаа. Dunder аргуудыг дахин тодорхойлоод байх шаардлага бага гардаг ч python -ий сайт эсхүл google -ээр хайн dunder method -ийн тодорхойлолтыг олон түүнийг дээрх жишээнд үзүүлсний адилаар дахин тодорхойлох боломжууд байдгийг мэдэж байх нь чухал.

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

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

Tuple төрөл хичээлээр үзсэн жишээнүүдэд tuple -ийн элементүүдийг нэрлээгүй. Өөрөөр хэлбэл төрлийн элементүүдэд зөвхөн индексээр нь хандаж байсан. Гэтэл tuple -д бие биетэйгээ холбоо бүхий өгөгдлийн багцыг голлон хадгалдаг гэдгээс түүнд индексээс өөрөөр классын шинж байдлаар ханддаг болбол илүү ойлгомжтой, эвтэйхэн болохоор. Python -ий элементүүдэд нь нэр өгч болдог namedtuple буюу нэрлэгдсэн tuple гэдэг класстай төстэй төрөл энэ боломжийг олгохыг жишээгээр харцгаая.

  Нээгдсэн тоо: 847 Бүртгүүлэх

Мөрийн хэвжүүлэлт бол тусдаа сэдэв. Мөрүүдийг нийлүүлэн ажиллах боломжтой хэдий ч мөр агуулсан том хэмжээний массивтай ажиллахад ийм арга маш эвгүй. Функц, хувьсагчуудтай ажиллаж эхлэх үедээ та мөрүүдийг хэвжүүлэх тусгай механизм байх хэрэгтэйг ойлгох болно. Мөрийг хэвжүүлэх энгийн зарчим бол мөр дотор placeholder буюу орлуулагчийг тодорхойлох юм. Жишээ нь

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

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

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

Хичээлээр функц ашиглахтай холбоотой нэгэн чухал онцлогийн талаар үзэх болно. Чухамдаа бол функцууд нэгийгээ агуулах болон функцийн хувьсагчдын харагдах хүрээний тухай юм.
Хувьсагчдын харагдах хүрээнд тэдгээртэй харьцахад LEGB дүрмийг баримталдаг. Энд L - local /функц доторх/, E - enclosing function local /дотоод функцээр хаагдсан/, G - global /глобал/, B - built in /дотоодын/ гэсэн үгнүүд болно. Орчуулга сайнгүй тул англи хэллэгээр нь тогтоогоод авсан нь илүү.

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

Арифметик прогрессын ялгавар тэгтэй тэнцүү биш. Энэхүү прогрессын 1-р гишүүнийг 2-р гишүүнээр, 2-р гишүүнийг 3-р гишүүнээр, 3-р гишүүнийг 1-р гишүүнээр үржүүлэхэд гарах тоонууд өгөгдсөн дарааллаар геометрийн прогресс үүсгэдэг бол геометр прогессын хуваарийг ол.

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

 

Бөмбөрцөгт багтсан зөв дөрвөн өнцөгт пирамидийн суурь нь бөмбөрцөгийн төвийг дайрч байв. Пирамидийн эзэлхүүн 18-тай тэнцүү бол бөмбөрцөгийн радиусийг ол.

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

 

Зөв зургаан өнцөгт пирамидийн апофем h -тэй тэнцүү бөгөөд сууртай үүсгэх хоёр талст өнцөг 600 градус бол пирамидийн бүтэн гадаргуун талбайг ол.

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