MAVZU: Python Dasturlash tili
REJA:
Python dasturlash haqida ma’lumot
Dasturlash misollari
Dasturlashning rivojlanish muhiti
Python bu talqin qilingan, yuqori darajadagi va umumiy maqsadli dasturlash tili. Pythonning dizayn falsafasi ta'kidlaydi kod o'qilishi ning taniqli ishlatilishi bilan muhim bo'shliq. Uning til konstruktsiyalari va ob'ektga yo'naltirilgan yordam berish uchun maqsad dasturchilar kichik va yirik loyihalar uchun aniq, mantiqiy kod yozish.[28]
Python shunday dinamik ravishda terilgan va axlat yig'ilgan. Bu bir nechta qo'llab-quvvatlaydi dasturlash paradigmalari, shu jumladan tuzilgan (xususan, protsessual), ob'ektga yo'naltirilganva funktsional dasturlash. Python keng qamrovli bo'lgani uchun ko'pincha "batareyalar kiritilgan" til sifatida tavsiflanadi standart kutubxona.[29]
Python 1980-yillarning oxirida yaratilgan va birinchi bo'lib 1991 yilda chiqarilgan Gvido van Rossum vorisi sifatida ABC dasturlash tili. 2000 yilda chiqarilgan Python 2.0 yangi funktsiyalarni taqdim etdi, masalan tushunchalar ro'yxati, va bilan axlat yig'ish tizimi ma'lumotni hisoblash, va 2020 yilda 2.7 versiyasi bilan to'xtatildi.[30] Python 3.0, 2008 yilda chiqarilgan bo'lib, bu tilning to'liq qayta ko'rib chiqilmaganligi edi orqaga qarab mos keladi va juda ko'p Python 2 kodlari Python 3-da o'zgartirilmagan ishlaydi. Python 2-lar bilan umr tugashi, faqat Python 3.6.x[31] va keyinchalik qo'llab-quvvatlanadi, eski versiyalar hali ham qo'llab-quvvatlanmoqda, masalan. Windows 7 (va 64-bitli Windows bilan cheklanmagan eski o'rnatuvchilar).
Python tarjimonlar mainstream uchun qo'llab-quvvatlanadi operatsion tizimlar va yana bir nechtasi uchun mavjud (va ilgari yana ko'p narsalarni qo'llab-quvvatlagan). Dasturchilarning global hamjamiyati rivojlanadi va qo'llab-quvvatlaydi CPython, a bepul va ochiq manbali[32] ma'lumotnomani amalga oshirish. Notijorat tashkilot Python dasturiy ta'minot fondi, Python va CPython rivojlanishi uchun resurslarni boshqaradi va boshqaradi. Hozirda u bilan aloqada Java dunyodagi ikkinchi eng mashhur dasturlash tili sifatida.[33][34]
Python 1980-yillarning oxirida o'ylab topilgan[35] tomonidan Gvido van Rossum da Centrum Wiskunde & Informatica (CWI) Gollandiya vorisi sifatida ABC dasturlash tili, ilhomlantirgan SETL),[36] qodir istisno bilan ishlash va bilan interfeys Amoeba operatsion tizim.[8] Uni amalga oshirish 1989 yil dekabrda boshlangan.[37] Van Rossum loyihaning yagona mas'uliyatini, etakchi ishlab chiquvchi sifatida, 2018 yil 12-iyulgacha, Python'dagi vazifasidan "doimiy ta'tilga" chiqishini e'lon qilgunga qadar oldi. Hayot uchun xayrixoh diktator, Python hamjamiyati unga loyihaning bosh qaror qabul qiluvchisi sifatida uzoq muddatli majburiyatini aks ettirish uchun bergan unvon.[38] Endi u besh kishilik boshqaruv kengashi a'zosi sifatida o'zining rahbarligini baham ko'rmoqda.[39][40][41] 2019 yil yanvar oyida Python yadrosi faol dasturchilari Bret Kannon, Nik Koglan, Barri Varshava, Kerol Uilling va Van Rossumni loyihani boshqarish uchun besh kishilik "Boshqaruv kengashi" ga sayladilar.[42] O'shandan beri Gvido van Rossum 2020 yilgi boshqaruv kengashiga nomzodini qaytarib oldi.[43]
Python 2.0 2000 yil 16-oktabrda juda ko'p yangi xususiyatlarga ega, shu jumladan a tsiklni aniqlash axlat yig'uvchi va qo'llab-quvvatlash Unicode.[44]
Python 3.0 2008 yil 3-dekabrda chiqarildi. Bu tilning to'liq qayta ko'rib chiqilishi edi, bu to'liq emas orqaga qarab mos keladi.[45] Uning asosiy xususiyatlari ko'p edi orqaga qaytarilgan Python 2.6.x ga[46] va 2.7.x versiyasi. Python 3 versiyasi quyidagilarni o'z ichiga oladi 2to3 Python 2 kodini Python 3 ga tarjima qilishni avtomatlashtiradigan (hech bo'lmaganda qisman) yordamchi dastur.[47]
Python 2.7-lar umr tugashi sana dastlab 2015 yilda o'rnatilgandan so'ng, mavjud kodlarning katta qismi Python 3 ga osongina uzatilishi mumkin emasligi sababli 2020 yilga qoldirildi.[48][49] Buning uchun boshqa xavfsizlik tuzatishlari yoki boshqa yaxshilanishlar chiqarilmaydi.[50][51] Python 2-lar bilan umr tugashi, faqat Python 3.6.x[52] va keyinchalik qo'llab-quvvatlanadi. Python - bu ko'p paradigma dasturlash tili. Ob'ektga yo'naltirilgan dasturlash va tizimli dasturlash to'liq qo'llab-quvvatlanadi va uning ko'plab xususiyatlari qo'llab-quvvatlanadi funktsional dasturlash va aspektga yo'naltirilgan dasturlash (shu jumladan tomonidan metaprogramma[53] va metaobektlar (sehrli usullar)).[54] Boshqa ko'plab paradigmalar kengaytmalar orqali qo'llab-quvvatlanadi, shu jumladan shartnoma bo'yicha loyihalash[55][56] va mantiqiy dasturlash.[57]
Python foydalanadi dinamik yozish va birikmasi ma'lumotni hisoblash va uchun tsiklni aniqlaydigan axlat yig'uvchi xotirani boshqarish.[58] Shuningdek, u dinamik xususiyatlarga ega ism o'lchamlari (kech majburiy), bu dasturni bajarish paytida usul va o'zgaruvchan nomlarni bog'laydi.
Python dizayni ba'zi qo'llab-quvvatlaydi funktsional dasturlash ichida Lisp an'ana. Unda bor filtr, xaritava kamaytirish funktsiyalar; tushunchalar ro'yxati, lug'atlar, to'plamlar va generator iboralar.[59] Standart kutubxonada qarzga olingan funktsional vositalarni amalga oshiradigan ikkita modul (itertools va functools) mavjud Xaskell va Standart ML.[60]
Tilning asosiy falsafasi hujjatda umumlashtirilgan The Python Zen (PEP 20) o'z ichiga oladi aforizmlar kabi:[61]
Chiroyli xunukdan yaxshiroqdir.
Yashirin narsadan oshkora yaxshiroqdir.
Oddiy murakkabdan yaxshiroqdir.
Murakkab murakkabdan yaxshiroqdir.
O'qish qobiliyati hisobga olinadi.
Python o'zining barcha funktsiyalarini yadroga o'rnatganidan ko'ra, juda yuqori darajada ishlab chiqilgan kengaytiriladigan. Ushbu ixcham modullik uni mavjud dasturlarga programlanadigan interfeyslarni qo'shish vositasi sifatida ayniqsa mashhur qildi. Van Rossumning katta standart kutubxonasi va osonlikcha kengaytiriladigan tarjimoni bo'lgan kichik yadroli til haqidagi tasavvurlari uning ko'ngli qolganidan kelib chiqqan ABC, qarama-qarshi yondashuvni qo'llab-quvvatlagan.[35]
Python dasturchilarga kodlash metodologiyasida tanlov berish bilan birga, sodda, kamroq tartibsiz sintaksis va grammatikaga intiladi. Aksincha Perl"buni amalga oshirishning bir nechta yo'li mavjud"shiori, Python" buni amalga oshirishning aniq usuli bo'lishi kerak, va yaxshisi bitta bo'lishi kerak "dizayn falsafasini o'z ichiga oladi.[61] Aleks Martelli, a Yo'ldosh da Python dasturiy ta'minot fondi va Python kitob muallifi, "Biror narsani" aqlli "deb ta'riflash - bu yozadi emas Python madaniyatidagi iltifot deb qaraldi. "[62]
Python ishlab chiquvchilari undan qochishga intilishadi muddatidan oldin optimallashtirish, va muhim bo'lmagan qismlariga yamoqlarni rad eting CPython aniqlik evaziga tezlikni marginal oshirilishini ta'minlaydigan mos yozuvlar dasturi.[63] Tezlik muhim bo'lganida, Python dasturchisi vaqt kabi muhim funktsiyalarni C kabi tillarda yozilgan kengaytma modullariga ko'chirishi yoki ishlatishi mumkin. PyPy, a hozirda kompilyator. Cython shuningdek, Python skriptini C ga tarjima qiladigan va Python tarjimoniga to'g'ridan-to'g'ri C darajasidagi API qo'ng'iroqlarini amalga oshiradigan mavjud.
Python dasturchilarining muhim maqsadi - uni ishlatishni qiziqarli qilish. Bu tilning nomida aks etgan - ingliz komediya guruhiga hurmat Monty Python[64]- va o'quv qo'llanmalariga va spam-tuxumlarga ishora qiluvchi misollar kabi ma'lumotlarga vaqti-vaqti bilan o'ynaydigan yondashuvlarda ( mashhur Monty Python eskizi) standart o'rniga foo va bar.[65][66]
Umumiy neologizm Python hamjamiyatida pitonik, dastur uslubi bilan bog'liq keng ma'noga ega bo'lishi mumkin. Kodni pitonik deb aytish, uning Python iboralarini yaxshi ishlatishini, tabiiy yoki tilda ravonligini ko'rsatishini, Pythonning minimalist falsafasiga mos kelishini va o'qish imkoniyatiga ahamiyat berishini anglatadi. Aksincha, tushunish qiyin bo'lgan yoki boshqa dasturlash tilidan qo'pol transkripsiya kabi o'qiladigan kod deyiladi jonsiz.
Python-ning foydalanuvchilari va muxlislari, ayniqsa bilimdon yoki tajribali deb hisoblanganlar, ko'pincha shunday nomlanadi Pitonistalar.[67][68]
Python oson o'qiladigan til bo'lishi kerak. Uning formatlashi ingl. Tartibsiz va ko'pincha boshqa tillarda tinish belgilaridan foydalanadigan inglizcha kalit so'zlardan foydalaniladi. Ko'pgina boshqa tillardan farqli o'laroq, u foydalanmaydi jingalak qavslar bloklarni chegaralash uchun va iboralardan keyin vergul bilan ixtiyoriy. Undan kamroq sintaktik istisnolar va maxsus holatlar mavjud C yoki Paskal.[69]
Chiziq
Do'stlaringiz bilan baham: |