<?xml version="1.0" encoding="utf-8" ?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:tt="http://teletype.in/" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/"><title>Oktamjon Dilbarov</title><author><name>Oktamjon Dilbarov</name></author><id>https://teletype.in/atom/programmer03</id><link rel="self" type="application/atom+xml" href="https://teletype.in/atom/programmer03?offset=0"></link><link rel="alternate" type="text/html" href="https://teletype.in/@programmer03?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=programmer03"></link><link rel="next" type="application/rss+xml" href="https://teletype.in/atom/programmer03?offset=10"></link><link rel="search" type="application/opensearchdescription+xml" title="Teletype" href="https://teletype.in/opensearch.xml"></link><updated>2026-05-14T14:03:54.020Z</updated><entry><id>programmer03:topshiriqlar_model_yangi</id><link rel="alternate" type="text/html" href="https://teletype.in/@programmer03/topshiriqlar_model_yangi?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=programmer03"></link><title>Topshiriqlar modellar - YANGI</title><published>2025-07-11T12:57:03.373Z</published><updated>2025-09-02T08:19:35.900Z</updated><summary type="html">1) Respublika admin:
- Butun respublika bo'yicha yetakchilarga
- Bazi viloyatdagi yetakchilarga
- Bazi tumanlardagi yetakchilarga
- Bazi neighborhood dagi yetakchilarga</summary><content type="html">
  &lt;p id=&quot;DtHT&quot;&gt;1) Respublika admin:&lt;br /&gt;- Butun respublika bo&amp;#x27;yicha yetakchilarga&lt;br /&gt;- Bazi viloyatdagi yetakchilarga&lt;br /&gt;- Bazi tumanlardagi yetakchilarga&lt;br /&gt;- Bazi neighborhood dagi yetakchilarga&lt;/p&gt;
  &lt;p id=&quot;Deuj&quot;&gt;2) Viloyat admin:&lt;br /&gt;- O&amp;#x27;zini viloyatidagi hamma yetakchilarga&lt;br /&gt;- O&amp;#x27;zini viloyatidagi bazi tumanlar yetakchilariga&lt;br /&gt;- O&amp;#x27;zini viloyatidagi bazi neighborhooddagi yetakchilarga&lt;/p&gt;
  &lt;p id=&quot;4uqa&quot;&gt;3) Tuman admin:&lt;br /&gt;- O&amp;#x27;zini tumanidagi hamma yetakchilarga&lt;br /&gt;- O&amp;#x27;zini tumanidagi bazi neighborhood dagi yetakchilarga&lt;/p&gt;
  &lt;p id=&quot;ghYT&quot;&gt;&lt;/p&gt;
  &lt;h3 id=&quot;QW9K&quot;&gt;Tuman admin:&lt;/h3&gt;
  &lt;p id=&quot;5tsK&quot;&gt;1) Butun tumanga (o&amp;#x27;zini tumaniga) topshiriq jo&amp;#x27;natish&lt;/p&gt;
  &lt;pre id=&quot;hRTI&quot;&gt;{
  &amp;quot;title&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;description&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;deadline&amp;quot;: &amp;quot;2025-08-11T06:14:43.725Z&amp;quot;,
  &amp;quot;scope&amp;quot;: &amp;quot;district&amp;quot;
}&lt;/pre&gt;
  &lt;p id=&quot;J4EC&quot;&gt;2) Ma&amp;#x27;lum bir neighborhoodlarni o&amp;#x27;ziga topshiriq berish&lt;/p&gt;
  &lt;pre id=&quot;wMuf&quot;&gt;{
  &amp;quot;title&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;description&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;deadline&amp;quot;: &amp;quot;2025-08-11T06:14:43.725Z&amp;quot;,
  &amp;quot;scope&amp;quot;: &amp;quot;fixed&amp;quot;,
  &amp;quot;neighborhoods&amp;quot;: [
    8, 9
  ]
}&lt;/pre&gt;
  &lt;h3 id=&quot;rvx7&quot;&gt;Viloyat admin:&lt;/h3&gt;
  &lt;p id=&quot;evhB&quot;&gt;1) Butun viloyatga (o&amp;#x27;zini viloyatiga) topshiriq berish&lt;/p&gt;
  &lt;pre id=&quot;pLwS&quot;&gt;{
  &amp;quot;title&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;description&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;deadline&amp;quot;: &amp;quot;2025-08-11T06:14:43.725Z&amp;quot;,
  &amp;quot;scope&amp;quot;: &amp;quot;region&amp;quot;
}&lt;/pre&gt;
  &lt;p id=&quot;vNIE&quot;&gt;2) Bazi tumanlarni o&amp;#x27;ziga (ichidagi hamma mahallalarga)&lt;/p&gt;
  &lt;pre id=&quot;6c8W&quot;&gt;{
  &amp;quot;title&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;description&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;deadline&amp;quot;: &amp;quot;2025-08-11T06:14:43.725Z&amp;quot;,
  &amp;quot;scope&amp;quot;: &amp;quot;fixed&amp;quot;,
  &amp;quot;districts&amp;quot;: [
    {
      &amp;quot;id&amp;quot;: 4,
      &amp;quot;all_neighborhoods&amp;quot;: true
    },
    {
      &amp;quot;id&amp;quot;: 5,
      &amp;quot;all_neighborhoods&amp;quot;: true
    }
  ]
}&lt;/pre&gt;
  &lt;p id=&quot;NokE&quot;&gt;3) Bazi tumanlarga hamma mahallalar bilan + bazilarida ma&amp;#x27;lum mahallarga&lt;/p&gt;
  &lt;pre id=&quot;YkjD&quot;&gt;{
  &amp;quot;title&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;description&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;deadline&amp;quot;: &amp;quot;2025-08-11T06:14:43.725Z&amp;quot;,
  &amp;quot;scope&amp;quot;: &amp;quot;fixed&amp;quot;,
  &amp;quot;districts&amp;quot;: [
    {
      &amp;quot;id&amp;quot;: 4,
      &amp;quot;all_neighborhoods&amp;quot;: true
    },
    {
      &amp;quot;id&amp;quot;: 5,
      &amp;quot;all_neighborhoods&amp;quot;: false
    }
  ],
  &amp;quot;neighborhoods&amp;quot;: [22, 23]
}&lt;/pre&gt;
  &lt;p id=&quot;jcVK&quot;&gt;4) Faqat bazi tumanni bazi mahallariga&lt;/p&gt;
  &lt;pre id=&quot;P7rR&quot;&gt;{
  &amp;quot;title&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;description&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;deadline&amp;quot;: &amp;quot;2025-08-11T06:14:43.725Z&amp;quot;,
  &amp;quot;scope&amp;quot;: &amp;quot;fixed&amp;quot;,
  &amp;quot;districts&amp;quot;: [
    {
      &amp;quot;id&amp;quot;: 3,
      &amp;quot;all_neighborhoods&amp;quot;: false
    }
  ],
  &amp;quot;neighborhoods&amp;quot;: [
    8, 9
  ]
}&lt;/pre&gt;
  &lt;h3 id=&quot;01Vv&quot;&gt;Respublika admin&lt;/h3&gt;
  &lt;p id=&quot;qhBh&quot;&gt;1) Butun respublikaga&lt;/p&gt;
  &lt;pre id=&quot;DZyy&quot;&gt;{
  &amp;quot;title&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;description&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;deadline&amp;quot;: &amp;quot;2025-08-11T06:14:43.725Z&amp;quot;,
  &amp;quot;scope&amp;quot;: &amp;quot;republic&amp;quot;
}&lt;/pre&gt;
  &lt;p id=&quot;VgFq&quot;&gt;2) Ma&amp;#x27;lum viloyatlarga (tuman va mahallani tanlamasdan)&lt;/p&gt;
  &lt;pre id=&quot;NHM8&quot;&gt;{
  &amp;quot;title&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;description&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;deadline&amp;quot;: &amp;quot;2025-08-11T06:14:43.725Z&amp;quot;,
  &amp;quot;scope&amp;quot;: &amp;quot;fixed&amp;quot;,
  &amp;quot;regions&amp;quot;: [
    {
      &amp;quot;id&amp;quot;: 4,
      &amp;quot;all_districts&amp;quot;: true
    }
  ]
}&lt;/pre&gt;
  &lt;p id=&quot;gTnV&quot;&gt;3) Bazi viloyatni hamma tumanlari bilan, bazilarini ma&amp;#x27;lum tumanlari bilan&lt;/p&gt;
  &lt;pre id=&quot;huyf&quot;&gt;{
  &amp;quot;title&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;description&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;deadline&amp;quot;: &amp;quot;2025-08-11T06:14:43.725Z&amp;quot;,
  &amp;quot;scope&amp;quot;: &amp;quot;fixed&amp;quot;,
  &amp;quot;regions&amp;quot;: [
    {
      &amp;quot;id&amp;quot;: 4,
      &amp;quot;all_districts&amp;quot;: true
    },
    {
      &amp;quot;id&amp;quot;: 5,
      &amp;quot;all_districts&amp;quot;: false
    }
  ],
  &amp;quot;districts&amp;quot;: [
    {
      &amp;quot;id&amp;quot;: 10,
      &amp;quot;all_neighborhoods&amp;quot;: true
    }
  ]
}&lt;/pre&gt;
  &lt;p id=&quot;tbZo&quot;&gt;4) Bazi mahallaga topshiriq berish&lt;/p&gt;
  &lt;pre id=&quot;H721&quot;&gt;{
  &amp;quot;title&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;description&amp;quot;: &amp;quot;string&amp;quot;,
  &amp;quot;deadline&amp;quot;: &amp;quot;2025-08-11T06:14:43.725Z&amp;quot;,
  &amp;quot;scope&amp;quot;: &amp;quot;fixed&amp;quot;,
  &amp;quot;regions&amp;quot;: [
    {
      &amp;quot;id&amp;quot;: 4,
      &amp;quot;all_districts&amp;quot;: true
    },
    {
      &amp;quot;id&amp;quot;: 5,
      &amp;quot;all_districts&amp;quot;: false
    }
  ],
  &amp;quot;districts&amp;quot;: [
    {
      &amp;quot;id&amp;quot;: 10,
      &amp;quot;all_neighborhoods&amp;quot;: false
    }
  ],
  &amp;quot;neighborhoods&amp;quot;: [
    53, 54, 55
  ]
}&lt;/pre&gt;

</content></entry><entry><id>programmer03:bTW51morFsE</id><link rel="alternate" type="text/html" href="https://teletype.in/@programmer03/bTW51morFsE?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=programmer03"></link><title>API tushunchasi haqida</title><published>2021-11-19T15:28:20.362Z</published><updated>2021-11-19T15:28:20.362Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img2.teletype.in/files/90/a4/90a414a6-2c80-4c89-a768-8dfecc8d2431.jpeg"></media:thumbnail><summary type="html">&lt;img src=&quot;https://t-images.imgix.net/https%3A%2F%2Fstatic.t-cdn.net%2F5ea3e4a6fccadd392f62a083%2Fposts%2F5f9d8a2e486fc31b567e7330%2F5f9d8a2e486fc31b567e7330_8134.png?width=1240&amp;w=1240&amp;auto=format%2Ccompress&amp;ixlib=js-2.3.1&amp;s=e0b35e7df359e09405679e3415719fed&quot;&gt;API (application programming interface)- boshqa biror bir ilova ikkinchisi bilan to'g'ridan-to'g'ri muloqot qilishi uchun yaratilgan protseduralar, funksiyalar va klasslardan tashkil topgan katta to'plam.</summary><content type="html">
  &lt;h2 id=&quot;jai3&quot;&gt;&lt;strong&gt;API o&amp;#x27;zi nima? u o&amp;#x27;zi nega kerak?&lt;/strong&gt;&lt;/h2&gt;
  &lt;figure id=&quot;n8xP&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://t-images.imgix.net/https%3A%2F%2Fstatic.t-cdn.net%2F5ea3e4a6fccadd392f62a083%2Fposts%2F5f9d8a2e486fc31b567e7330%2F5f9d8a2e486fc31b567e7330_8134.png?width=1240&amp;w=1240&amp;auto=format%2Ccompress&amp;ixlib=js-2.3.1&amp;s=e0b35e7df359e09405679e3415719fed&quot; width=&quot;1240&quot; /&gt;
  &lt;/figure&gt;
  &lt;blockquote id=&quot;vVDm&quot;&gt;&lt;strong&gt;API&lt;em&gt; (a&lt;/em&gt;&lt;/strong&gt;&lt;em&gt;&lt;code&gt;pplication &lt;/code&gt;&lt;strong&gt;p&lt;/strong&gt;&lt;code&gt;rogramming &lt;/code&gt;&lt;strong&gt;i&lt;/strong&gt;&lt;code&gt;nterface&lt;/code&gt;&lt;strong&gt;)- &lt;/strong&gt;boshqa biror bir ilova ikkinchisi bilan to&amp;#x27;g&amp;#x27;ridan-to&amp;#x27;g&amp;#x27;ri muloqot qilishi uchun yaratilgan protseduralar, funksiyalar va klasslardan tashkil topgan katta to&amp;#x27;plam.&lt;/em&gt;&lt;/blockquote&gt;
  &lt;p id=&quot;SCKN&quot;&gt;To&amp;#x27;g&amp;#x27;risi &lt;strong&gt;API&lt;/strong&gt; nima ekanligini bir qoida bilan tushuntirish biroz mushkul. Tushunishingiz oson bo&amp;#x27;lishi uchun ajoyib misol topib qo&amp;#x27;yganman.&lt;/p&gt;
  &lt;blockquote id=&quot;7WgF&quot;&gt;&lt;em&gt;&lt;strong&gt;API&lt;/strong&gt;ga misol qilib - rozetkani olsak.Uning vazifasi elektr tokini boshqa qurilmalarga yetkazish.Unga siz istalgan qurilmani ulab ishlatishingiz mumkin:&lt;code&gt;Elektr Choynak&lt;/code&gt; ,&lt;code&gt;muzlatgich,dazmol&lt;/code&gt; va hokazolar .Yuqoridagi misolda rozetka o&amp;#x27;rnida - &lt;strong&gt;API&lt;/strong&gt; , Dazmol o&amp;#x27;rniga - Mobil ilova , Muzlatgich o&amp;#x27;rniga - veb ilova , elektr choynak o&amp;#x27;rniga esa - desktop ilovani bemalol misol qilishingiz mumkin va o&amp;#x27;z o&amp;#x27;zidan &lt;strong&gt;ular ishlashi uchun rozetkaga ya&amp;#x27;ni APIga murojaat qilishi lozimligi ma&amp;#x27;lum bo&amp;#x27;ladi.&lt;/strong&gt;Endi &lt;strong&gt;API&lt;/strong&gt; nima ekanligi biroz bo&amp;#x27;lsada ma&amp;#x27;lum bo&amp;#x27;ldi. Kattaroq loyihalarda &lt;/em&gt;&lt;strong&gt;API&lt;/strong&gt;&lt;em&gt;ning o&amp;#x27;rni o&amp;#x27;ta muhim.U &lt;code&gt;xoh veb ilova , mobil ilova , desktop ilova&lt;/code&gt; bo&amp;#x27;lsin - ular bir &lt;strong&gt;API&lt;/strong&gt; bilan ma&amp;#x27;lumotlar almashib ishlaydi. &lt;/em&gt;&lt;/blockquote&gt;
  &lt;figure id=&quot;iOPp&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://t-images.imgix.net/https%3A%2F%2Fimg.freepik.com%2Ffree-vector%2Felectric-plug-and-socket-unplug-outline-design_35632-174.jpg%3Fsize%3D626%26ext%3Djpg?width=1240&amp;w=1240&amp;auto=format%2Ccompress&amp;ixlib=js-2.3.1&amp;s=ab7e67dd408c88e641c8d1caa396a0a2&quot; width=&quot;1240&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;X0bf&quot;&gt;&lt;strong&gt;API &lt;/strong&gt; ilovaning boshqa platformalarda ishlab chiqish jarayonini sezilarli darajada tezlashtiradi.&lt;/p&gt;
  &lt;blockquote id=&quot;4lLz&quot;&gt;&lt;em&gt;Agar &lt;strong&gt;API &lt;/strong&gt;mavjud bo&amp;#x27;lmasa sizning ilovangiz funksionali cheklangan bo&amp;#x27;ladi. Uni boshqa platformalarda ishlab chiqish jarayoni qiyinlashib ketadi.Umuman olganda &lt;strong&gt;API&lt;/strong&gt; bu backend dasturlashning asosi. Zamonaviy dasturlashni &lt;strong&gt;API&lt;/strong&gt;siz tasavvur qilish o&amp;#x27;ta mushkul.&lt;/em&gt;&lt;/blockquote&gt;
  &lt;p id=&quot;Ywkk&quot;&gt;Har bir katta loyihaning o&amp;#x27;z &lt;strong&gt;API&lt;/strong&gt;si bo&amp;#x27;ladi. Ajoyib funksionalga ega loyihalarda bir emas bir-nechta &lt;strong&gt;API&lt;/strong&gt;dan foydalanilganligiga guvoh bo&amp;#x27;lamiz. Bu esa ilovaning samaradorligi hamda funksionalining oshishiga katta hissa qo&amp;#x27;shadi. Biz bilgan &lt;strong&gt;API&lt;/strong&gt;larning ko&amp;#x27;pgina qismi &lt;code&gt;public&lt;/code&gt;&lt;strong&gt;API&lt;/strong&gt;hisoblanadi ya&amp;#x27;ni bu &lt;strong&gt;API&lt;/strong&gt;dan barcha foydalanishi mumkin. Katta kompaniyalar, ijtimoiy tarmoqlar taqdim etgan APIni ham public API deb atashimiz mumkin. Sizning loyihangiz &lt;code&gt;spotify&lt;/code&gt; bilan ma&amp;#x27;lumot almashib ishlasa yoki uning xizmatlaridan foydalansa siz unga o&amp;#x27;xshash servisni qaytadan qurishingiz shart emas. Shunchaki uning &lt;strong&gt;API&lt;/strong&gt;sidan foydalanasiz. Saytingizga &lt;code&gt;youtube&lt;/code&gt;ning funksionalini qo&amp;#x27;shmoqchi bo&amp;#x27;lsangiz , shunchaki uning &lt;strong&gt;API&lt;/strong&gt;sidan foydalaning:&lt;/p&gt;
  &lt;figure id=&quot;wClB&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://t-images.imgix.net/https%3A%2F%2Fstatic.t-cdn.net%2F5ea3e4a6fccadd392f62a083%2Fposts%2F5f9dc0c203c1c7424e68da6a%2F5f9dc0c203c1c7424e68da6a_40234.png?width=1240&amp;w=1240&amp;auto=format%2Ccompress&amp;ixlib=js-2.3.1&amp;s=8114254a2a7366cca51d7faa8b190c4f&quot; width=&quot;1240&quot; /&gt;
    &lt;figcaption&gt;&lt;code&gt;&lt;a href=&quot;https://developers.google.com/youtube/v3&quot; target=&quot;_blank&quot;&gt;https://developers.google.com/youtube/v3&lt;/a&gt;&lt;/code&gt;&lt;/figcaption&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;PwZd&quot;&gt;&lt;strong&gt;Covid19 &lt;/strong&gt;bo&amp;#x27;yicha statistik ma&amp;#x27;lumot kerak bo&amp;#x27;lsa buning uchun alohida kuch sarflash shart emas(statistik ma&amp;#x27;lumotlarni yetkazib beruvchi loyihani ishga tushurish va hk.) &lt;strong&gt;Covid19 &lt;/strong&gt;statistikasini yetkazib beruvchi maxsus &lt;strong&gt;API&lt;/strong&gt;lar mavjud. Ular yordamida ishingiz ancha yengil bitadi &lt;strong&gt;:-) , &lt;/strong&gt;qolaversa python dasturlash tilida talaygina kutubxonalar ham mavjud.&lt;/p&gt;
  &lt;blockquote id=&quot;Fb1f&quot;&gt;&lt;strong&gt;Foydali havola: &lt;/strong&gt;&lt;a href=&quot;https://pypi.org/project/COVID19Py&quot; target=&quot;_blank&quot;&gt;https://pypi.org/project/COVID19Py&lt;/a&gt;&lt;/blockquote&gt;
  &lt;blockquote id=&quot;oCtV&quot;&gt;&lt;em&gt;Agarda telegram messengeri bizga o&amp;#x27;z &lt;strong&gt;API&lt;/strong&gt;sini taqdim etmaganida , telegram botlarni yozish bunchalik qulay bo&amp;#x27;lmas edi.&lt;/em&gt;Mutaxassislarning fikricha, loyihalarga funksional qo&amp;#x27;shish davomida &lt;strong&gt;API&lt;/strong&gt;dan foydalanish eng ma&amp;#x27;qul yechimdir.&lt;/blockquote&gt;
  &lt;h4 id=&quot;t71H&quot;&gt;&lt;strong&gt;Ma&amp;#x27;lumotlar formati haqida qisqacha&lt;/strong&gt;&lt;/h4&gt;
  &lt;p id=&quot;IPi1&quot;&gt;Veb servis &lt;strong&gt;API&lt;/strong&gt;larida ma&amp;#x27;lumotlar formatining asosan ikki turidan foydalanishadi: &lt;strong&gt;Json&lt;/strong&gt; &amp;amp; &lt;strong&gt;XML.&lt;/strong&gt; Bular ma&amp;#x27;lumotlarni qabul qilish hamda yuborish uchun umumiy format ya&amp;#x27;ni ma&amp;#x27;lumot formati deb yuritiladi. Qisqa qilib aytganda serverlar o&amp;#x27;rtasida ma&amp;#x27;lumot almashish uchun juda ham qo&amp;#x27;l keladi.&lt;/p&gt;
  &lt;p id=&quot;KDcR&quot;&gt;&lt;strong&gt;JSON (J&lt;/strong&gt;ava&lt;strong&gt;S&lt;/strong&gt;cript&lt;strong&gt; O&lt;/strong&gt;bject&lt;strong&gt; N&lt;/strong&gt;otation&lt;strong&gt;)&lt;/strong&gt; bu yuqorida aytib o&amp;#x27;tganimdek ma&amp;#x27;lumotlar almashinishi uchun ishlatiladigan ma&amp;#x27;lumot formati bo&amp;#x27;lib, javascript uchun yaratilgan va aynan shu tilda boshqalarga nisbatan kengroq foydalanadi. Ammo boshqa tillarda ham faol ravishda qo&amp;#x27;llanilib kelinmoqda. Sintaksisini bir qarashdayoq tushunib olish mumkin.&lt;/p&gt;
  &lt;p id=&quot;DVUf&quot;&gt;&lt;strong&gt;XML&lt;/strong&gt; - E&lt;strong&gt;x&lt;/strong&gt;tensible &lt;strong&gt;M&lt;/strong&gt;arkup &lt;strong&gt;L&lt;/strong&gt;anguage (&lt;strong&gt;HTML&lt;/strong&gt; bilan o&amp;#x27;xshash tarzda yozilgan). Vazifasi xuddi &lt;strong&gt;json&lt;/strong&gt; kabi ma&amp;#x27;lumotlar tashish, tuzilishini saqlash va ta&amp;#x27;riflashdan iborat. Sodda qilib aytganda ular oddiy ma&amp;#x27;lumot formati.&lt;/p&gt;
  &lt;blockquote id=&quot;dIHl&quot;&gt;Umuman olganda birning kamchiligi ikkinchisining yutug&amp;#x27;idir!&lt;/blockquote&gt;
  &lt;figure id=&quot;TJFG&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://t-images.imgix.net/https%3A%2F%2Fstatic.t-cdn.net%2F5ea3e4a6fccadd392f62a083%2Fposts%2F5f9d8aca22fb946a099f3a50%2F5f9d8aca22fb946a099f3a50_92025.png?width=1240&amp;w=1240&amp;auto=format%2Ccompress&amp;ixlib=js-2.3.1&amp;s=086c5c219d605685502b1b5c312484c9&quot; width=&quot;1240&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;AFnq&quot;&gt;Ma&amp;#x27;lumotlar formati haqida yaxshiroq tushunishingiz uchun yuqoridagi sxemani taqdim etaman. Unda siz &lt;strong&gt;json&lt;/strong&gt; hamda &lt;strong&gt;xml&lt;/strong&gt;ni taqqoslashingiz ham mumkin.&lt;/p&gt;
  &lt;blockquote id=&quot;LKrQ&quot;&gt;&lt;strong&gt;Foydali havolalar:&lt;/strong&gt;&lt;a href=&quot;https://www.w3schools.com/xml/default.asp&quot; target=&quot;_blank&quot;&gt;https://www.w3schools.com/xml/default.asp&lt;/a&gt; , &lt;a href=&quot;https://www.w3schools.com/js/js_json_intro.asp&quot; target=&quot;_blank&quot;&gt;https://www.w3schools.com/js/js_json_intro.asp&lt;/a&gt;&lt;/blockquote&gt;
  &lt;h4 id=&quot;jCdq&quot;&gt;&lt;strong&gt;REST API tushunchasi.&lt;/strong&gt;&lt;/h4&gt;
  &lt;figure id=&quot;hmIn&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://t-images.imgix.net/https%3A%2F%2Fgamipress.com%2Fwp-content%2Fuploads%2F2019%2F01%2Frest-api-extended.svg?width=1240&amp;w=1240&amp;auto=format%2Ccompress&amp;ixlib=js-2.3.1&amp;s=1ed3c6fd827db24a0b9498f217990819&quot; width=&quot;1000&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;Gpcl&quot;&gt;&lt;strong&gt;REST&lt;/strong&gt; to&amp;#x27;liq holatda &lt;strong&gt;RE&lt;/strong&gt;&lt;code&gt;presentational &lt;/code&gt;&lt;strong&gt;S&lt;/strong&gt;&lt;code&gt;tate &lt;/code&gt;&lt;strong&gt;Tr&lt;/strong&gt;&lt;code&gt;ansfer&lt;/code&gt; deb aytiladi. &lt;strong&gt;REST&lt;/strong&gt; &lt;strong&gt;HTTP&lt;/strong&gt; protokoli yordamida ilova yoki veb saytni server bilan muloqotga kirishishiga xizmat qiluvchi umumiy prinsipdir (&lt;strong&gt;SOAP&lt;/strong&gt; kabi protokol emas). REST termining vujudga kelishida HTTP protokoli asoschilaridan biri &lt;a href=&quot;https://en.wikipedia.org/wiki/Roy_Fielding&quot; target=&quot;_blank&quot;&gt;Roy Fielding&lt;/a&gt;ning hissasi katta (bu termin 2000-yilda vujudga kelgan). REST &lt;strong&gt;RPC&lt;/strong&gt;ning alternativi hisoblanadi. Maqolada keltirgan HTTP metodlarni &amp;quot;Rest So&amp;#x27;rovlar&amp;quot; deb ham atash mumkin. &lt;strong&gt;REST&lt;/strong&gt; &lt;code&gt;&amp;quot;stili&amp;quot;&lt;/code&gt; &lt;strong&gt;HTTP 1.1&lt;/strong&gt; bilan parallel ravishda o&amp;#x27;sib kelmoqda. Chunki ikkalasining ham asosini &lt;strong&gt;HTTP 1.0&lt;/strong&gt; tashkil etadi.&lt;/p&gt;
  &lt;p id=&quot;SUIk&quot;&gt;&lt;strong&gt;REST &lt;/strong&gt;yordamida veb servislar yaratish davomida boshqa termin ya&amp;#x27;ni &lt;strong&gt;RESTful&lt;/strong&gt; qo&amp;#x27;llaniladi.&lt;/p&gt;
  &lt;p id=&quot;jRyW&quot;&gt;&lt;strong&gt;REST&lt;/strong&gt;ning afzalliklari:&lt;/p&gt;
  &lt;ul id=&quot;owmI&quot;&gt;
    &lt;li id=&quot;vrMm&quot;&gt;Har bir resurs &lt;strong&gt;URL&lt;/strong&gt; bo&amp;#x27;yicha aniqlanadi. Bu esa &lt;strong&gt;URL&lt;/strong&gt; har bir resurs uchun kalit vazifasini o&amp;#x27;tashini anglatadi.&lt;/li&gt;
    &lt;li id=&quot;cEwi&quot;&gt;Resurs ustidan boshqaruv yoki ularni nazorati to&amp;#x27;liq ravishda ma&amp;#x27;lumotlarni uzatish protokoli yordamida amalga oshiriladi. Eng keng tarqalgan protokollardan biri bu albatta - &lt;strong&gt;HTTP.&lt;/strong&gt;&lt;/li&gt;
    &lt;li id=&quot;lIXh&quot;&gt;Komponentlarning portativligi.&lt;/li&gt;
    &lt;li id=&quot;EDLD&quot;&gt;Yangilanish yoki yangi zamon talablariga mos ravishda tez va oson o&amp;#x27;zgarish xususiyatiga ega.&lt;/li&gt;
    &lt;li id=&quot;5Slz&quot;&gt;O&amp;#x27;zgartirish kiritish o&amp;#x27;ta yengil.&lt;/li&gt;
    &lt;li id=&quot;AStP&quot;&gt;Interfeys soddaligi.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;nlb6&quot;&gt;&lt;strong&gt;REST&lt;/strong&gt;da request &amp;amp; response Json formatda yetkaziladi.&lt;/p&gt;
  &lt;blockquote id=&quot;Itd5&quot;&gt;&lt;code&gt;GET: https://api.twitter.com/1.1/account/settings.json { &amp;quot;errors&amp;quot;:[ { &amp;quot;code&amp;quot;:215, &amp;quot;message&amp;quot;:&amp;quot;Bad Authentication data.&amp;quot; } ] } &lt;em&gt;&amp;quot;https://api.twitter.com/1.1/account/settings.json&amp;quot;&lt;/em&gt;&lt;/code&gt;&lt;em&gt; bo&amp;#x27;yicha so&amp;#x27;rov yuborganimizda server yuqoridagi &lt;strong&gt;response&lt;/strong&gt;ni qaytardi. Ya&amp;#x27;ni biz &lt;strong&gt;twitter&lt;/strong&gt;ga avtorizatsiya bo&amp;#x27;lmaganmiz &lt;strong&gt;:) &lt;/strong&gt;Shuning uchun server bizga &lt;strong&gt;settings&lt;/strong&gt;ga oid ma&amp;#x27;lumotni qaytara olmaydi.&lt;strong&gt;STATUS&lt;/strong&gt;&lt;code&gt; bu HTTP status kodi. (200-OK , 404-Not Found ...)&lt;/code&gt;&lt;strong&gt;MESSAGE&lt;/strong&gt;&lt;code&gt; esa bu response xabari.(&amp;quot;Not Found&amp;quot; , &amp;quot;Bad Request&amp;quot;)&lt;/code&gt;&lt;/em&gt;&lt;/blockquote&gt;
  &lt;figure id=&quot;YFah&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://t-images.imgix.net/https%3A%2F%2Fstatic.t-cdn.net%2F5ea3e4a6fccadd392f62a083%2Fposts%2F5f9d73ef6777d66d806b31fb%2F5f9d73ef6777d66d806b31fb_2573.png?width=1240&amp;w=1240&amp;auto=format%2Ccompress&amp;ixlib=js-2.3.1&amp;s=61b31ec6449e40383dfff54d4f0065e1&quot; width=&quot;1240&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;F5qy&quot;&gt;Agar e&amp;#x27;tibor bergan bo&amp;#x27;lsangiz , &lt;strong&gt;iT &lt;/strong&gt;sohasida bo&amp;#x27;sh ish o&amp;#x27;rinlarini taklif qiluvchi vakansiyalarda &lt;em&gt;&amp;quot;restful API bilan ishlash ko&amp;#x27;nikmasi&amp;quot; &lt;/em&gt;ko&amp;#x27;plab vakansiyalarda takrorlangan&lt;strong&gt;*&lt;/strong&gt; Bu degani siz xoh frontend , android , ios va hk. dasturchi bo&amp;#x27;ling &lt;strong&gt;API&lt;/strong&gt; bilan ishlashni bilishingiz muhim.&lt;/p&gt;
  &lt;blockquote id=&quot;TjzJ&quot;&gt;&lt;code&gt;&lt;strong&gt;* &lt;/strong&gt;&lt;/code&gt;Опыт проектирования и поддержки клиент-серверного &lt;strong&gt;API&lt;/strong&gt;, Понимание &lt;strong&gt;RESTful&lt;/strong&gt; API , Опыт работы с протоколами &lt;strong&gt;REST&lt;/strong&gt;/JSON &lt;strong&gt;API&lt;/strong&gt;, &lt;strong&gt;RESTful API&lt;/strong&gt; и HTTP/S va shunga o&amp;#x27;xshash talablar.&lt;/blockquote&gt;
  &lt;h4 id=&quot;2fUK&quot;&gt;&lt;strong&gt;API endpoint hamda route haqida&lt;/strong&gt;&lt;/h4&gt;
  &lt;figure id=&quot;7XXq&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://t-images.imgix.net/https%3A%2F%2Fwww.dropsource.com%2Fwp-content%2Fuploads%2Fsites%2F3%2F2018%2F08%2FPersons.png?width=1240&amp;w=1240&amp;auto=format%2Ccompress&amp;ixlib=js-2.3.1&amp;s=1fa7e7dcaffff43c00b3b4d6e0703193&quot; width=&quot;1240&quot; /&gt;
  &lt;/figure&gt;
  &lt;ul id=&quot;h2kh&quot;&gt;
    &lt;li id=&quot;HQGg&quot;&gt;&lt;strong&gt;Route&lt;/strong&gt; (yoki marshrut ) - bu &lt;strong&gt;API&lt;/strong&gt;ning qandaydur qismi nima ish bajarishiga ishora qilib turuvchi nom. Boshqacha qilib aytganda sizning so&amp;#x27;rovingiz yuborilayotgan manzil marshrut deb ataladi. Unga HTTP metodlari bo&amp;#x27;yicha so&amp;#x27;rov yuboriladi. Bir route bir nechta&lt;strong&gt; endpointl&lt;/strong&gt;arga ega bo&amp;#x27;lishi mumkin.&lt;/li&gt;
    &lt;li id=&quot;6YRq&quot;&gt;&lt;strong&gt;Endpoin&lt;/strong&gt;t ( yakuniy nuqta &lt;strong&gt;- конечная точка&lt;/strong&gt; ) - bu marshrutga (route)ga alohida HTTP metodlari yordamida murojaat qilishdir. Har bir endpoint aniq bir masalani hal etadi va ular har bir klientdan (klient haqida o&amp;#x27;tgan safargi maqolamda aytib o&amp;#x27;tgan edim) parametr(sozlamalar)ni oladi so&amp;#x27;ngra unga shu bo&amp;#x27;yicha ma&amp;#x27;lumotlarni yetkazadi.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;f64l&quot;&gt;Yuqoridagilar haqida tasavvurga ega bo&amp;#x27;lish uchun quyidagi misolni ko&amp;#x27;rib chiqamiz:&lt;/p&gt;
  &lt;p id=&quot;LDvK&quot;&gt;&lt;code&gt;&lt;a href=&quot;http://example.com/api/v1/users/1&quot; target=&quot;_blank&quot;&gt;http://example.com/api/v1/users/1&lt;/a&gt;&lt;/code&gt;&lt;/p&gt;
  &lt;blockquote id=&quot;QikY&quot;&gt;&lt;code&gt;api/v1/users/1 &lt;/code&gt;- Bu marshrut&lt;code&gt; (route) , api/ &lt;/code&gt;esa rest API ga olib boruvchi standart yo&amp;#x27;l.Yuqoridagi marshrut 4 ta endpointga ega deb ayta olamiz:&lt;strong&gt;GET&lt;/strong&gt; - bu metod bilan murojaat qilinganda&lt;strong&gt; id&lt;/strong&gt;si 1ga teng foydalanuvchi haqidagi ma&amp;#x27;lumot server tomonidan bizga yuboriladi.&lt;strong&gt;PUT / PATCH &lt;/strong&gt; - bu metod orqali biz so&amp;#x27;rov yuboramiz. Ya&amp;#x27;ni &lt;strong&gt;id&lt;/strong&gt;si 1ga teng foydalanuvchi haqidagi ma&amp;#x27;lumotni yangilash uchun. So&amp;#x27;rov &lt;code&gt;json&lt;/code&gt; formatida yuborilishi mumkin.&lt;strong&gt;POST&lt;/strong&gt; - bu metod orqali serverga yangi resurs qo&amp;#x27;shiladi .&lt;code&gt;/api/v1/users&lt;/code&gt; ga bu metod bilan murojaat qilinganda yangi foydalanuvchi qo&amp;#x27;shish mumkin.&lt;strong&gt;DELETE&lt;/strong&gt; - bu metod vazifasi nomidan ma&amp;#x27;lum. Foydalanuvchi haqidagi ma&amp;#x27;lumotni serverdan o&amp;#x27;chiradi.&lt;/blockquote&gt;
  &lt;p id=&quot;3YYh&quot;&gt;Boshqa dasturlash tillariga nisbatan &lt;strong&gt;python&lt;/strong&gt;da ko&amp;#x27;proq kod yozaman. Balkim shuning uchundur u menga ko&amp;#x27;proq yoqadi hamda qulay. Maqolam davomida esa &lt;strong&gt;python&lt;/strong&gt; dasturlash tilida &lt;strong&gt;API&lt;/strong&gt; yaratish imkonini beruvchi freymvorklarni keltirib o&amp;#x27;tmoqchiman.&lt;/p&gt;
  &lt;p id=&quot;JAt4&quot;&gt;&lt;strong&gt;API qo&amp;#x27;llanmasi (API documentation)&lt;/strong&gt;&lt;/p&gt;
  &lt;figure id=&quot;ClFi&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://t-images.imgix.net/https%3A%2F%2F19yw4b240vb03ws8qm25h366-wpengine.netdna-ssl.com%2Fwp-content%2Fuploads%2Fredoc-demo-API-documentation.png?width=1240&amp;w=1240&amp;auto=format%2Ccompress&amp;ixlib=js-2.3.1&amp;s=b9c6defa1de6aabc62e1483e42fb8e71&quot; width=&quot;1240&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;fIOY&quot;&gt;Har bir &lt;strong&gt;API&lt;/strong&gt; : qo&amp;#x27;llanmaga (boshqacha qilib aytganda documentationga) ega bo&amp;#x27;lishi shart. &lt;strong&gt;Buning nima ahamiyati bor?&lt;/strong&gt; - qo&amp;#x27;llanmada sizning &lt;strong&gt;API&lt;/strong&gt;ingiz qanday va nima vaziyatda qo&amp;#x27;llanilishi , barcha &lt;strong&gt;endpoinlar &lt;/strong&gt;hamda &lt;strong&gt;route&lt;/strong&gt;larga yuboriladigan so&amp;#x27;rovlar va ularning vazifasi to&amp;#x27;liq yoritilgan bo&amp;#x27;ladi(ko&amp;#x27;p hollarda so&amp;#x27;rovlar oldindan tayyorlab qo&amp;#x27;yilgan bo&amp;#x27;ladi). Bu esa siz o&amp;#x27;z &lt;strong&gt;API&lt;/strong&gt;ingizni&lt;code&gt; public API &lt;/code&gt;ko&amp;#x27;rinishida namoyish etishingizda katta rol o&amp;#x27;ynaydi. Hozirda ko&amp;#x27;plab freymvorklar xususan:&lt;strong&gt; Django-rest-framework&lt;/strong&gt; hamda &lt;strong&gt;FastAPI&lt;/strong&gt; sizning &lt;strong&gt;API&lt;/strong&gt;ingiz uchun qo&amp;#x27;llanmani o&amp;#x27;zi avtomatik tarzda generatisya qilib beradi.&lt;/p&gt;
  &lt;blockquote id=&quot;6AUC&quot;&gt;&lt;strong&gt;Tavsiya etilgan:&lt;/strong&gt; Barchamizga tanish &lt;strong&gt;Click UZ&lt;/strong&gt;ning &lt;strong&gt;API&lt;/strong&gt; qo&amp;#x27;llanmasi: &lt;code&gt;&lt;a href=&quot;https://docs.click.uz/click-api-request/&quot; target=&quot;_blank&quot;&gt;https://docs.click.uz/click-api-request/&lt;/a&gt;&lt;/code&gt; barchasi to&amp;#x27;liq yoritilgan.&lt;/blockquote&gt;
  &lt;h3 id=&quot;y7q1&quot;&gt;&lt;strong&gt;Pythonda API yaratish imkoniyatini beruvchi freymvorklar&lt;/strong&gt;&lt;/h3&gt;
  &lt;h3 id=&quot;b93A&quot;&gt;&lt;strong&gt;FastAPI &lt;/strong&gt;&lt;/h3&gt;
  &lt;figure id=&quot;6yv3&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://t-images.imgix.net/https%3A%2F%2Fhabrastorage.org%2Fgetpro%2Fhabr%2Fpost_images%2F76e%2Fee9%2Fe74%2F76eee9e74c12fdf22c682fe5475f2ab2.png?width=1240&amp;w=1240&amp;auto=format%2Ccompress&amp;ixlib=js-2.3.1&amp;s=0547b5f0093dbfd5e4ca761cc479f6ed&quot; width=&quot;1240&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;b865&quot;&gt;Bu freymvork oxirgi vaqtlarda o&amp;#x27;zimga ham juda ma&amp;#x27;qul keldi. Chunki unda API yaratish boshqalariga nisbatan tezroq (nomi bilan&lt;strong&gt; FAST !!!&lt;/strong&gt;). Bu freymvorkni yuqori tezlikga ega &lt;strong&gt;HTTP API&lt;/strong&gt; serverlarni yaratishda qo&amp;#x27;llashyapdi. Bu freymvork&lt;strong&gt; Starlette&lt;/strong&gt; asosida qurilgan , validatsiyaga esa&lt;strong&gt; Pydantic&lt;/strong&gt; javob beradi. Umuman olganda bu freymvorkni har bir python dasturchi ishlatib ko&amp;#x27;rishi zarur. &lt;strong&gt;FastAPI&lt;/strong&gt; Python dasturlash tilidagi eng tez backend freymvorklar qatoriga kiradi.(&lt;code&gt;Django&lt;/code&gt;dan tez)&lt;/p&gt;
  &lt;p id=&quot;KJ4s&quot;&gt;&lt;em&gt;P.S &lt;strong&gt;FastAPI &lt;/strong&gt;mikrofreymvorklar sirasiga kiradi.&lt;/em&gt;&lt;/p&gt;
  &lt;blockquote id=&quot;WLdH&quot;&gt;Men oxirgi kunlarda FastAPI ishlatib kelmoqdaman. Ayni damda jamoamiz bilan birgalikda &lt;strong&gt;Microsoftdagi ML servislarimizda&lt;/strong&gt; FastAPIdan foydalanishni reja qilib kelmoqdamiz. &lt;strong&gt;Windows &lt;/strong&gt;hamda &lt;strong&gt;Ofis&lt;/strong&gt; mahsulotlarimizni ham u bilan integratsiya qilish rejamizda bor.Kabir Khan - &lt;strong&gt;Microsoft&lt;/strong&gt;&lt;/blockquote&gt;
  &lt;blockquote id=&quot;8AWS&quot;&gt;&lt;strong&gt;Foydali havola:&lt;/strong&gt; &lt;a href=&quot;https://fastapi.tiangolo.com/&quot; target=&quot;_blank&quot;&gt;https://fastapi.tiangolo.com/&lt;/a&gt;&lt;/blockquote&gt;
  &lt;h3 id=&quot;chpV&quot;&gt;&lt;strong&gt;Flask&lt;/strong&gt;&lt;/h3&gt;
  &lt;p id=&quot;cyKZ&quot;&gt;&lt;em&gt;Mikrofreymvork&lt;/em&gt;&lt;/p&gt;
  &lt;figure id=&quot;WdIn&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://t-images.imgix.net/https%3A%2F%2Fspin.atomicobject.com%2Fwp-content%2Fuploads%2F20180917161630%2Fflask.png?width=1240&amp;w=1240&amp;auto=format%2Ccompress&amp;ixlib=js-2.3.1&amp;s=a35a8d9472121bf6fe236faa57081df7&quot; width=&quot;1240&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;Hdxn&quot;&gt;&lt;strong&gt;Flask&lt;/strong&gt; - Python dasturchilar orasida juda ham ommabop bo&amp;#x27;lgan freymvork. Githubda 50000dan ortiq &lt;strong&gt;&amp;quot;star&amp;quot;&lt;/strong&gt;lari mavjud. Bu fremvorkdan python dasturlash tilida veb ilovalar qurishda keng qo&amp;#x27;llaniladi.&lt;/p&gt;
  &lt;p id=&quot;kqKS&quot;&gt;So&amp;#x27;ngi yillarda &lt;strong&gt;Flask&lt;/strong&gt; ko&amp;#x27;p yangilandi va juda qulay o&amp;#x27;zgartirishlar kiritildi. Bu o&amp;#x27;zgarishlar sabab biz uni full stack freymvork deb atashimiz ham mumkin. Uning minimalistikligi ya&amp;#x27;ni veb ilovalar qurilishi soddaligi dasturchilar uchun aynan muddao. Maqolam davomida &lt;strong&gt;Python&lt;/strong&gt; dasturlash tilidagi &lt;strong&gt;API&lt;/strong&gt;ni aynan Flaskda yaratamiz!&lt;/p&gt;
  &lt;blockquote id=&quot;MwB5&quot;&gt;&lt;strong&gt;Foydali havola:&lt;/strong&gt; &lt;a href=&quot;https://flask.palletsprojects.com/en/1.1.x/&quot; target=&quot;_blank&quot;&gt;https://flask.palletsprojects.com/en/1.1.x/&lt;/a&gt;&lt;/blockquote&gt;
  &lt;h3 id=&quot;2bPB&quot;&gt;&lt;strong&gt;Django&lt;/strong&gt;&lt;/h3&gt;
  &lt;p id=&quot;xwpm&quot;&gt;&lt;em&gt;Full stack freymvork.&lt;/em&gt;&lt;/p&gt;
  &lt;figure id=&quot;mgzN&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://t-images.imgix.net/https%3A%2F%2Fhabrastorage.org%2Fwebt%2Fun%2Fbp%2Ft7%2Funbpt7cxokqgbdtwc6vr_5cimqq.jpeg?width=1240&amp;w=1240&amp;auto=format%2Ccompress&amp;ixlib=js-2.3.1&amp;s=19a183aed45d6277e6e36b4fd2c25a43&quot; width=&quot;1240&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;5ToR&quot;&gt;&lt;strong&gt;Django&lt;/strong&gt; - Python dasturlash tilida yaratilgan Full Stack veb freymvork. Imkoniyatli juda ham ko&amp;#x27;p , hamda boshqa freymvorklarga nisbatan qulayroq. Ushbu freymvorkni maqolamga bog&amp;#x27;laydigan bo&amp;#x27;lsak , bu borada Django ancha yetakchi! Django bazasida ishlab chiqilgan &lt;strong&gt;Django REST &lt;/strong&gt;freymvorki mavjud. Unda asosan &lt;strong&gt;RESTful API&lt;/strong&gt;lar quriladi va bu borada ancha loyihalar amalga oshgan.&lt;/p&gt;
  &lt;p id=&quot;Q4CM&quot;&gt;Bu borada qiziqishingiz yuqori bo&amp;#x27;lsa izohlarda qoldiring , albatta inobatga olaman.&lt;/p&gt;
  &lt;blockquote id=&quot;XcWC&quot;&gt;&lt;strong&gt;Foydali havolalar:&lt;code&gt;Django Rest Framework&lt;/code&gt;&lt;/strong&gt; - &lt;a href=&quot;https://github.com/encode/django-rest-frameworkDjango&quot; target=&quot;_blank&quot;&gt;https://github.com/encode/django-rest-frameworkDjango&lt;/a&gt; - &lt;a href=&quot;https://github.com/django/django&quot; target=&quot;_blank&quot;&gt;https://github.com/django/django&lt;/a&gt;&lt;/blockquote&gt;
  &lt;p id=&quot;ZyZN&quot;&gt;Maqola avtori: Abduaziz Ziyovuddinov&lt;br /&gt;To&amp;#x27;liq maqola: &lt;a href=&quot;https://bit.ly/3CF8nri&quot; target=&quot;_blank&quot;&gt;https://bit.ly/3CF8nri&lt;/a&gt;&lt;/p&gt;

</content></entry><entry><id>programmer03:qI0EEIcnyhd</id><link rel="alternate" type="text/html" href="https://teletype.in/@programmer03/qI0EEIcnyhd?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=programmer03"></link><title>Dasturlashdan 5ta masala</title><published>2021-10-29T11:02:57.378Z</published><updated>2021-10-29T12:12:32.452Z</updated><summary type="html">Narsisistik raqam -  bu shunday n xonali sonki uni raqamlarini nchi darajaga ko'tarib - ularni qo'shsa - ana shu sonni o'zi hosil bo'lishi kerak.</summary><content type="html">
  &lt;h3 id=&quot;b9mB&quot;&gt;Birinchi masala&lt;/h3&gt;
  &lt;p id=&quot;2SKy&quot;&gt;Narsisistik raqam -  bu shunday n xonali sonki uni raqamlarini nchi darajaga ko&amp;#x27;tarib - ularni qo&amp;#x27;shsa - ana shu sonni o&amp;#x27;zi hosil bo&amp;#x27;lishi kerak.&lt;/p&gt;
  &lt;p id=&quot;i6Om&quot;&gt;Masalan, 153 soni - 3 xonali son, shuning uchun har bir raqamni uchinchi darajaga ko&amp;#x27;tarib - keyin yig&amp;#x27;indini hisoblaymiz. Agar natija dastlabki sonni o&amp;#x27;ziga teng bo&amp;#x27;lsa - demak u son narsisistik hisoblanadi, bo&amp;#x27;lmasa yo&amp;#x27;q.&lt;/p&gt;
  &lt;p id=&quot;QSfK&quot;&gt;1³ + 5³ + 3³ = 1+125+27 = 153 (narsisistik✅)&lt;/p&gt;
  &lt;p id=&quot;Rnpx&quot;&gt;Endi 1652 sonini olaylik - (4 xonali son)&lt;br /&gt;1⁴ + 6⁴ + 5⁴ + 2⁴ = 1938&lt;br /&gt;Demak bu narsisistik son emas❌&lt;/p&gt;
  &lt;p id=&quot;zPA8&quot;&gt;Sizning vazifangiz shuki kiritilgan son - narsisistik son ekanligini tekshiradigan funksiya yozish. Agar son narsisistik bo&amp;#x27;lsa dasturingiz True chiqarishi kerak, unday bo&amp;#x27;lmasa - False.&lt;/p&gt;
  &lt;p id=&quot;MLHK&quot;&gt;Dasturingizni sinash uchun quyidagi Input dagi raqamlarni kiritsangiz - dasturingiz Outputdagi natija bilan bir xil natija qaytarishi kerak:&lt;/p&gt;
  &lt;p id=&quot;H033&quot;&gt;&lt;code&gt;Input: 7 ➡️ Output: True&lt;br /&gt;Input: 122 ➡️ Output: False&lt;br /&gt;Input: 371 ➡️ Output: True&lt;/code&gt;&lt;/p&gt;
  &lt;h3 id=&quot;JIGS&quot;&gt;&lt;strong&gt;Ikkinchi masala&lt;/strong&gt;&lt;/h3&gt;
  &lt;p id=&quot;75YI&quot;&gt;Siz odatda do&amp;#x27;konga kirganingizda kredit kartadan foydalanasiz. Lekin siz kimdir plastik kartangizni raqamini bilib olishini hohlamaysiz. Sizning vazifangiz shuki - foydalanuvchi kiritgan ma&amp;#x27;lumotni oxirgi 4ta belgidan boshqa hamma belgilarni # ga almashtirish. Agar foydalanuvchi kiritgan input - 4ta belgi yoki undan kam bo&amp;#x27;lsa hech narsa o&amp;#x27;zgartirmaysiz. &lt;/p&gt;
  &lt;p id=&quot;fC3W&quot;&gt;Masalan:&lt;br /&gt;&lt;code&gt;Input: &amp;quot;12375861458&amp;quot; ➡️ Output: &amp;quot; #######1458&amp;quot;&lt;br /&gt;Input: &amp;quot;abcdef&amp;quot; ➡️ Output: &amp;quot;##cdef&amp;quot;&lt;br /&gt;Input: &amp;quot;ab15&amp;quot; ➡️ Output: &amp;quot;ab15&amp;quot;&lt;/code&gt;&lt;/p&gt;
  &lt;h3 id=&quot;tfpQ&quot;&gt;Uchinchi masala&lt;/h3&gt;
  &lt;p id=&quot;7yO0&quot;&gt;Shunday funksiya yozingki - u gapni string ko&amp;#x27;rinishida olib, undagi 4tadan ko&amp;#x27;p xarfli so&amp;#x27;zlarni teskari ko&amp;#x27;rinishiga keltirishi kerak. Masalan:&lt;/p&gt;
  &lt;p id=&quot;drcl&quot;&gt;&lt;code&gt;&lt;strong&gt;Input 1: &amp;quot;Bu python dasturlash tili&amp;quot;&lt;br /&gt;Output 1: &amp;quot;Bu nohtyp hsalrutsad tili&amp;quot;&lt;/strong&gt;&lt;/code&gt;&lt;/p&gt;
  &lt;p id=&quot;ZSoR&quot;&gt;Ko&amp;#x27;rib turganingizdek, bu yerdagi gapda - faqatgina harflar soni 4tadan ko&amp;#x27;p bo&amp;#x27;lgan so&amp;#x27;zlar teskarisiga almashtirilgan (python ➡️ nohtyp), agar so&amp;#x27;zdagi harflar soni 4ta yoki undan kam bo&amp;#x27;lsa so&amp;#x27;z o&amp;#x27;zgartirilmaydi!&lt;/p&gt;
  &lt;p id=&quot;wMa7&quot;&gt;&lt;strong&gt;&lt;code&gt;Input 2: &amp;quot;Men uyga ketdim&amp;quot;&lt;br /&gt;Output 2: &amp;quot;Men uyga midtek&amp;quot;&lt;/code&gt;&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;mHYE&quot;&gt;&lt;strong&gt;&lt;code&gt;Input 3: &amp;quot;Yolg&amp;#x27;on gapirish yaxshi emas&amp;quot;&lt;br /&gt;Output 3: &amp;quot;no&amp;#x27;gloY hsiripag ihsxay emas&amp;quot;&lt;/code&gt;&lt;/strong&gt;&lt;/p&gt;
  &lt;h3 id=&quot;lx0O&quot;&gt;&lt;strong&gt;To&amp;#x27;rtinchi masala&lt;/strong&gt;&lt;/h3&gt;
  &lt;p id=&quot;48xj&quot;&gt;Kassirga qaytim berishda yordam bering&lt;/p&gt;
  &lt;p id=&quot;AW0N&quot;&gt;Kamol do&amp;#x27;konga kirib, o&amp;#x27;zi uchun kerakli mahsulotlarga to&amp;#x27;lov qildi. Jami xarid qilingan mahsulotlar summasi M so&amp;#x27;m bo&amp;#x27;ldi. U kassirga N so&amp;#x27;m pul berdi. Kamol biroz injiq bo&amp;#x27;lgani sababli qaytim qiymati kattaroq kupyuralar bilan berilishini va kupyuralar soni kam bo&amp;#x27;lishini xohlaydi. Kassirga yordam bering.  &lt;/p&gt;
  &lt;p id=&quot;ZNsa&quot;&gt;Jami 1, 2, 5, 10, 50, 100, 200, 500, 1000, 2000, 5000, 10000, 20000, 50000 va 100000 so&amp;#x27;mlik kupyuralar muomalada bor deb hisoblansin.&lt;/p&gt;
  &lt;p id=&quot;roKs&quot;&gt;Agar Kamol bergan summa mahsulot narxidan kam bo&amp;#x27;lsa, 0 chiqarilsin.&lt;/p&gt;
  &lt;p id=&quot;OZko&quot;&gt;Kiruvchi ma&amp;#x27;lumotlar:&lt;br /&gt;Kirish oqimida ikkita musbat butun son, N va M sonlari probel bilan ajratilgan holda kiritiladi, sonlar qiymati 10⁹ dan oshmaydi.&lt;/p&gt;
  &lt;p id=&quot;5zpU&quot;&gt;Chiquvchi ma&amp;#x27;lumotlar:&lt;br /&gt;Chiqish oqimida qaytim uchun berilishi mumkin bo&amp;#x27;lgan kupyuralar sonining eng kam miqdorini chiqarish kerak bo&amp;#x27;ladi.&lt;/p&gt;
  &lt;p id=&quot;Laqv&quot;&gt;Masalan:&lt;/p&gt;
  &lt;p id=&quot;dXtw&quot;&gt;&lt;code&gt;Input 1: &amp;quot;34226 10&amp;quot;&lt;br /&gt;Output 1: 8&lt;/code&gt;&lt;/p&gt;
  &lt;p id=&quot;cxh4&quot;&gt;&lt;code&gt;Input 2: &amp;quot;89493 10&amp;quot;&lt;br /&gt;Output 2: 10&lt;/code&gt;&lt;/p&gt;
  &lt;h3 id=&quot;U67l&quot;&gt;Beshinchi masala&lt;/h3&gt;
  &lt;p id=&quot;uHpl&quot;&gt;&amp;quot;Roma&amp;quot; keyingi bosqichda&lt;/p&gt;
  &lt;p id=&quot;NMZZ&quot;&gt;Barcelona futbol jamoasi Chempionlar ligasi nimchorak finalida &amp;quot;Roma&amp;quot; futbol klubi bilan to&amp;#x27;qnash keldi. &amp;quot;Barcelona&amp;quot; maydonida kechgan o&amp;#x27;yinda 4-1 hisobida &amp;quot;Barcelona&amp;quot; g&amp;#x27;alaba qozondi. Keyingi o&amp;#x27;yin &amp;quot;Roma&amp;quot; maydonida bo&amp;#x27;lib o&amp;#x27;tadi. &lt;/p&gt;
  &lt;p id=&quot;druK&quot;&gt;Vazifangiz &amp;quot;Roma&amp;quot; keyingi bosqichga chiqadimi yoki yo&amp;#x27;qmi aniqlash.&lt;/p&gt;
  &lt;p id=&quot;t9f0&quot;&gt;Izoh: Mehmon stadionida urilgan gol ziyodroq hisoblanadi.&lt;br /&gt;Kiruvchi ma&amp;#x27;lumotlar:&lt;br /&gt;Kirish oqimida bitta qatorda &amp;quot;-&amp;quot; bilan ajratilgan holatda &amp;quot;Roma&amp;quot; maydonida bo&amp;#x27;lgan hisob.&lt;br /&gt;Chiquvchi ma&amp;#x27;lumotlar:&lt;br /&gt;Agar &amp;quot;Roma&amp;quot; keyingi bosqichga chiqsa, win; chiqa olmasa, lost; va ikkita o&amp;#x27;yinda ham hisob bir xil bo&amp;#x27;lsa, penalty chiqarilsin.&lt;/p&gt;
  &lt;p id=&quot;n1Hm&quot;&gt;Masalaln:&lt;br /&gt;&lt;code&gt;Input 1: 3-0&lt;br /&gt;Output 1: win&lt;/code&gt;&lt;/p&gt;
  &lt;p id=&quot;22Wr&quot;&gt;&lt;code&gt;Input 2: 3-1&lt;br /&gt;Output 2: lost&lt;/code&gt;&lt;br /&gt;&lt;/p&gt;

</content></entry><entry><id>programmer03:8THirMzqSgq</id><link rel="alternate" type="text/html" href="https://teletype.in/@programmer03/8THirMzqSgq?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=programmer03"></link><title>#9-masalaga javob</title><published>2021-10-27T13:00:47.615Z</published><updated>2021-10-27T13:00:47.615Z</updated><summary type="html">To'qqizinchi masalaga Python da yozilgan javob. Siz o'z javobingizni kommentariyada qoldirishingiz mumkin.</summary><content type="html">
  &lt;p id=&quot;7abX&quot;&gt;To&amp;#x27;qqizinchi masalaga &lt;strong&gt;Python &lt;/strong&gt;da yozilgan javob. Siz o&amp;#x27;z javobingizni kommentariyada qoldirishingiz mumkin.&lt;/p&gt;
  &lt;pre id=&quot;u69b&quot; data-lang=&quot;python&quot;&gt;def divisibleSumPairs(k, ar):
    pairs = []
    output = 0

    while len(ar)!=0:
        item = ar[0]
        del ar[0]
        for i in ar:
            if (i+item)%k==0:
                pairs.append(f&amp;quot;{item}+{i}&amp;quot;)
                output+=1
    return output&lt;/pre&gt;

</content></entry><entry><id>programmer03:6pi57SsmyvB</id><link rel="alternate" type="text/html" href="https://teletype.in/@programmer03/6pi57SsmyvB?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=programmer03"></link><title>#8-masalaga javob</title><published>2021-10-18T14:15:19.854Z</published><updated>2021-10-18T14:15:19.854Z</updated><summary type="html">Sakizzinchi masalaga Python da yozilgan javob. Siz o'z javobingizni kommentariyada qoldirishingiz mumkin.</summary><content type="html">
  &lt;p id=&quot;VRe0&quot;&gt;Sakizzinchi masalaga &lt;strong&gt;Python &lt;/strong&gt;da yozilgan javob. Siz o&amp;#x27;z javobingizni kommentariyada qoldirishingiz mumkin.&lt;/p&gt;
  &lt;pre id=&quot;Xt9y&quot; data-lang=&quot;python&quot;&gt;def breakingRecords(scores):
    minimum = maximum = scores[0]
    x = y = 0
    
    for i in scores[1:]:
        if i&amp;gt;maximum:
            maximum = i
            x+=1
        elif i&amp;lt;minimum:
            minimum = i
            y+=1
    return x, y&lt;/pre&gt;
  &lt;p id=&quot;ffU0&quot;&gt;&lt;a href=&quot;https://t.me/codewars_uz/&quot; target=&quot;_blank&quot;&gt;https://t.me/codewars_uz/&lt;/a&gt; - dasturlashdan turli xil masalalar.&lt;/p&gt;

</content></entry><entry><id>programmer03:HWJLF1iRKpp</id><link rel="alternate" type="text/html" href="https://teletype.in/@programmer03/HWJLF1iRKpp?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=programmer03"></link><title>#7-masala javobi</title><published>2021-10-17T12:54:22.404Z</published><updated>2021-10-17T12:54:22.404Z</updated><summary type="html">Yettinchi masalaga Python da yozilgan javob. Siz o'z javobingizni kommentariyada qoldirishingiz mumkin.</summary><content type="html">
  &lt;p id=&quot;NNIJ&quot;&gt;Yettinchi masalaga &lt;strong&gt;Python &lt;/strong&gt;da yozilgan javob. Siz o&amp;#x27;z javobingizni kommentariyada qoldirishingiz mumkin.&lt;/p&gt;
  &lt;pre id=&quot;0KGO&quot; data-lang=&quot;python&quot;&gt;a = input(&amp;quot;Enter the number: &amp;quot;)
a = a.split(&amp;#x27;-&amp;#x27;) #listga keltiryabmiz inputni
barca = 4
roma = 1.1 #mehmonda urilgan gol

barca2 = int(a[1])
roma2 = int(a[0])
barca2 = barca2*1.1 #mehmonda urilgan gol

total_barca = barca + barca2 #barcani jami gollari
total_roma = roma2 + roma #romani jami gollari

if total_barca&amp;gt;total_roma:
	print(&amp;quot;lost&amp;quot;)
elif total_barca&amp;lt;total_roma:
	print(&amp;quot;win&amp;quot;)
else:
	print(&amp;quot;penalty&amp;quot;)&lt;/pre&gt;
  &lt;p id=&quot;w2Iu&quot;&gt;&lt;a href=&quot;https://t.me/codewars_uz/&quot; target=&quot;_blank&quot;&gt;https://t.me/codewars_uz/&lt;/a&gt; - dasturlashdan turli xil masalalar.&lt;/p&gt;

</content></entry><entry><id>programmer03:tu3HmPp9K3c</id><link rel="alternate" type="text/html" href="https://teletype.in/@programmer03/tu3HmPp9K3c?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=programmer03"></link><title>#6-masala javobi</title><published>2021-10-16T15:49:30.856Z</published><updated>2021-10-16T15:49:30.856Z</updated><summary type="html">Oltinchi masalaga Python da yozilgan javob. Siz o'z javobingizni kommentariyada qoldirishingiz mumkin.</summary><content type="html">
  &lt;p id=&quot;pafR&quot;&gt;Oltinchi masalaga &lt;strong&gt;Python &lt;/strong&gt;da yozilgan javob. Siz o&amp;#x27;z javobingizni kommentariyada qoldirishingiz mumkin.&lt;/p&gt;
  &lt;pre id=&quot;HV4t&quot; data-lang=&quot;python&quot;&gt;def plusMinus(arr):
    positive = 0
    negative = 0
    zero = 0
    total = len(arr)
    
    for i in arr:
        if i&amp;lt;0:
            negative+=1
        elif i&amp;gt;0:
            positive+=1
        else:
            zero+=1
            

    output = f&amp;quot;{positive/total}\n{negative/total}\n{zero/total}&amp;quot;
    
    return output&lt;/pre&gt;

</content></entry><entry><id>programmer03:Cv95v2mkA_7</id><link rel="alternate" type="text/html" href="https://teletype.in/@programmer03/Cv95v2mkA_7?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=programmer03"></link><title>#4 masala - javob</title><published>2021-10-13T18:08:51.829Z</published><updated>2021-10-13T18:08:51.829Z</updated><summary type="html">To'rtinchi masalaga Python da yozilgan javob. Siz o'z javobingizni kommentariyada qoldirishingiz mumkin.</summary><content type="html">
  &lt;p id=&quot;Vae0&quot;&gt;To&amp;#x27;rtinchi masalaga &lt;strong&gt;Python &lt;/strong&gt;da yozilgan javob. Siz o&amp;#x27;z javobingizni kommentariyada qoldirishingiz mumkin.&lt;/p&gt;
  &lt;pre id=&quot;DPlu&quot; data-lang=&quot;python&quot;&gt;def spin_words(sentence):
    a=sentence.split()
    output=[]
    for word in a:
        if len(word)&amp;gt;=5:
            output.append(word[::-1])
        else:
            output.append(word)
    result=&amp;#x27; &amp;#x27;.join(output)
    return result&lt;/pre&gt;

</content></entry><entry><id>programmer03:uKOgeSlwsw6</id><link rel="alternate" type="text/html" href="https://teletype.in/@programmer03/uKOgeSlwsw6?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=programmer03"></link><title>#5-masala - javob</title><published>2021-10-13T18:16:54.332Z</published><updated>2021-10-13T18:16:54.332Z</updated><summary type="html">Beshinchi masalaga Python da yozilgan javob. Siz o'z javobingizni kommentariyada qoldirishingiz mumkin.</summary><content type="html">
  &lt;p id=&quot;O1ru&quot;&gt;Beshinchi masalaga &lt;strong&gt;Python &lt;/strong&gt;da yozilgan javob. Siz o&amp;#x27;z javobingizni kommentariyada qoldirishingiz mumkin.&lt;/p&gt;
  &lt;pre id=&quot;rGLJ&quot; data-lang=&quot;python&quot;&gt;a = input(&amp;quot;Enter the number: &amp;quot;)
a = a.split()
list2 = [100000, 50000, 20000, 10000, 5000, 2000, 1000, 500, 200, 100, 50, 10, 5, 2, 1]

n = int(a[0])
m = int(a[1])

if n&amp;lt;m:
	print(0)
else:
	remainder = n-m
	output=[]
	index=0
	while index&amp;lt;=14:
		if remainder&amp;gt;=list2[index]:
			output.append(list2[index])
			remainder=remainder-list2[index]
		else:
			index+=1

print(len(output))&lt;/pre&gt;

</content></entry><entry><id>programmer03:k9VIHhZzN1T</id><link rel="alternate" type="text/html" href="https://teletype.in/@programmer03/k9VIHhZzN1T?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=programmer03"></link><title>#3 masala - javob</title><published>2021-10-12T18:00:24.662Z</published><updated>2021-10-12T18:00:24.662Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img4.teletype.in/files/73/98/7398b1d0-60c2-4f49-8a7a-0301e9b161e0.png"></media:thumbnail><summary type="html">&lt;img src=&quot;https://img2.teletype.in/files/93/a9/93a9d19d-13ee-496b-badd-70da941d904c.png&quot;&gt;Uchunchi masalaga Python da yozilgan javob. Siz o'z javobingizni kommentariyada qoldirishingiz mumkin.</summary><content type="html">
  &lt;p id=&quot;vu7D&quot;&gt;Uchunchi masalaga &lt;strong&gt;Python &lt;/strong&gt;da yozilgan javob. Siz o&amp;#x27;z javobingizni kommentariyada qoldirishingiz mumkin.&lt;/p&gt;
  &lt;figure id=&quot;SFyo&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/93/a9/93a9d19d-13ee-496b-badd-70da941d904c.png&quot; width=&quot;1026&quot; /&gt;
  &lt;/figure&gt;
  &lt;pre id=&quot;rgZP&quot; data-lang=&quot;python&quot;&gt;import random

chars = [&amp;#x27;a&amp;#x27;, &amp;#x27;e&amp;#x27;, &amp;#x27;i&amp;#x27;, &amp;#x27;o&amp;#x27;, &amp;#x27;u&amp;#x27;]

total_strings = []
num=0

while num&amp;lt;120:
  generated_string = &amp;quot;&amp;quot;
  random.shuffle(chars)
  for i in chars:
    generated_string += f&amp;quot;{i}&amp;quot;

  if generated_string not in total_strings:
    total_strings.append(generated_string)
    num+=1


print(total_strings)&lt;/pre&gt;

</content></entry></feed>