@wraps декоратор

Декораторийн суурь ойлголтод бас нэгэн чухал зүйлийг ойлгох хэрэгтэйг Декораторууд хичээлд үүсгэсэн

log_decorator -ийн жишээн дээр харцгаая.

Эхний гурван нүдний код Декораторууд хичээлийнхтэй ижил тул тайлбарлах шаардлагагүй. Харин 4-р нүдэнд help -ээр hello функцийн талаарх мэдээллийг харахад функцийг wrap гэж гаргасан. Уул нь hello гэж баймаар. Гэхдээ log_decorator декоратор wrap функцийг буцаах тул ажиллагааны энэ төлөв зөв ч програмийн кодод debug хийх буюу ямар нэгэн алдааг илрүүлэхэд асуудал үүсгэнэ. Ажиллагааны энэ төлөв декоратор тавигдсан аль функцээс дуудалт хийгдсэн, функцийн нэр юу болох, кодийн ажлын урсгалыг тогтоох зэрэгт амархан төөрөгдөлд оруулна. Иймээс интерпретаторт асуудлыг зөв ойлгуулан бүгдийг хэвийн горимоор ажлуулахын тулд functools модулийн @wraps декораторыг ашиглаж болно. Декоратор бичихдээ декоратор ашиглана гэдэг нь сонин байж болох үүнд төвөгтэй асуудал байхгүйг

жишээ харуулна. @wraps декораторыг ашиглахын тулд 1 -р нүдэнд functools модулаас wraps -ийг импортлон аваад log_decorator функцэд ирэх функцийг @wraps декораторт дамжуулна. @wraps декоратор багцлагдаж буй функц буюу түүнд дамжуулсан функцийн бүх мета өгөгдлийг гадагш өгөх боломжийг бүрдүүлнэ. Багцлагч wrapper функцуудад дурын параметрүүдийг авах үүднээс ихэнхдээ *arg, **kwargs -ийг тодорхойлон өгөөд тэдгээрийг дуудах функцэд дамжуулдаг. Одоо 3 -р нүдэнд hello функцэд log_decorator декораторыг тавин өгөөд 4 - р нүднийх шиг функцийг help функцэд өгвөл wrap биш hello нэрийг авна. Өөрийн коддоо декоратор ашиглахаар болбол @wraps декораторыг ашиглан интерпретаторийн анхдагч ажиллагааны төлөвийг өөрчлөн кодийн зүгшрүүлэлтийн ажиллагааг хөнгөн, ойлгомжтой болгохыг зөвлөе.

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

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

Програмд функц ямар хэрэгтэй вэ? гэсэн асуулт гарч ирж болох юм. Функцийн нэг үүрэг бол кодын ижил хэсгийг давталтгүй болгон дахин ашиглах боломжийг бүрдүүлэхэд оршино. Жишээ нь програмын ямар нэгэн логикийн хэрэгжүүлэлтийг нэг удаа кодлоод түүнийг програмын кодийн бусад хэсгүүдэд хэрэгтэй болоход ашиглах боломжийг функц олгох юм. Түүнээс кодийн хэсэг өөр хэсэгт хэрэг болоход түүнийг хуулан тавих арга бол муу аргачлал гэдэг нь тайлбаргүйгээр ойлгомжтой. Иймээс төслийн янз бүрийн хэсгийн кодчлолд олон удаа ашиглагдах хэсгийг функц байдлаар тодорхойлон ашиглах нь цэвэр код бичих, ажиллагаануудын үүргийн хувиарлалт тэр ч бүү хэл багийн гишүүдийн үүргийг хувиарлахад ашиг тустай.

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

Өгөгдлийн багцыг үүсгэн ашиглахад ихээхэн чухал үүрэгтэй төрөл бол толь буюу dictionary /dict/ юм. Програмчлалын хэлний өгөгдлийн төрлүүдийг тодорхой ажиллагаанд зориулан бий болгосон байдаг тул тэдгээрийн хооронд нь харьцуулан зэрэглэл тогтоох гэх нь буруу. Өөрөөр хэлбэл толь, жагсаалт, tuple зэрэг өгөгдлүүдийн төрлүүдийг хооронд харьцуулах шаардлагагүй гэсэн үг.

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

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

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

Ямарч програмын ажиллагаа өгөгдлийн төрлүүд дээр үндэслэн ажилладаг учраас програмчлалын хэлүүд өөрийн суурь өгөгдлийн төрлүүдтэй байдаг. Энгийн өгөгдлүүдийн төрлүүдээр илүү нарийн төрлүүдийг гарган эцсийн бүлэгт эдгээрийг хослуулан програмыг бүтээдэг. Нэг үгээр програм зохиохыг барилга барихтай зүйрлэбэл өгөгдлийн төрлүүд бол барилгын тоосго л гэсэн үг. 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