Python Dev
79 subscribers
236 photos
19 videos
3 files
101 links
Maqsad: Kanalga Python dasturlash tiliga oid faydali ma'lumotlar joylanib boriladi. Barchasi faqat sizlar uchun 💪🏻

Muhokama guruhimiz: @python_dev_chat
Murojaat: @uzaytijobs_admin
Download Telegram
Forwarded from Jakhongir Rakhmonov - IT
Mutaxsis sifatida o’sishning eng yaxshi usuli

2019chi yildan men “Building Your Own Python Web Framework” degan kurs chiqargan edim. Uning ustida tahminan 2 oycha ishlaganman. Shu paytgacha $10000 dan ortiq daromad olib kelgan. Katta pul emas, lekin juda yoqimli pul, passiv bo'lgani uchun. Bir uhlab tursangiz cho’ntagingizda $50 paydo bo'lib qolsa kimga yoqmaydi?

Bu kurs yozishdan oldin menda frameworklar yozishda umuman tajribam bo'lmagan. Qanday uddalaganman aytaymi? Ko'chirganman. Ha, to'g'ri o'qidingiz, ko'chirganman.

O'zimga yoqqan 3-4ta frameworklarning kodini o'rganib chiqqanman. Qanday ishlashini ko'rib chiqqanman. Birinchisidan ozgina ko'chirganman, ikkinchisidan ozgina ko'chirganman va hokazo. O’zim oz-moz o'zgartirishlar kiritganman. Hammasini birlashtirib shu kursni qilganman. Natijada bilimim oshgan, qolganlarga foydali bo'lgan, cho'ntakka ham foydali bo'lgan.

Siz ham ko'chiring.

Yaxshi dastruchi bo’lmoqchimisiz, siz bilgan yaxshi dasturchi qilgan ishlarni ko’chiring. Python o’rganyapsizmi, yaxshi yozilgan Python kodini topingda, ko’chiring. Django o’rganyapsizmi, yaxshi yozilgan Django loyihani topingda, ko’chiring. PHP o’rganyapsizmi, yaxshi fermer tanishingiz qilayotgan ishlarni ko’chiring.

Yetarlicha ko’chirdingizmi? Darajangiz oshganini sezyapsizmi? Keyingi qadam: kichik o’zgartirishlar kiriting. Qilgan ishingizni u yeriga tegib ko’ring, bu yeriga tegib ko’ring. O’zgartiring. Freestyle qiling. Tutoriallardan, kitoblardan tashqariga chiqing.

Shu qadamlarni yetarlicha qilganing. Tabriklayman, sizning unvoningiz endi Senior Copy Cat Developer. Hazil albatta. Lekin darajangiz oshgani aniq.

@jakhonrakhmonov
👍5
Search query in Django

views.py faylga quyidagi funksiyani yozamiz
from django.db.models import Q
from django.shortcuts import render
from myapp.models import MyModel

def my_view(request):
query = request.GET.get('q')

if query:
instances = MyModel.objects.filter(
Q(titleicontains=query) | Q(descriptionicontains=query)
)
else:
instances = MyModel.objects.none()

context = {'instances': instances}
return render(request, 'search_results.html', context)


index.html da GET usuli bilan forma:
<form method="get">
<input type="search" name="q" />
<button type="submit">Search</button>
</form>


So'rovning search_results.html sahifada chiqishi:
{% if instances %}
<ul>
{% for instance in instances %}
<li>{{ instance.title }}</li>
{% endfor %}
</ul>
{% else %}
<p>No instances found.</p>
{% endif %}

👉 @python_backend_dev
👍6🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Kayfiyat uchun 😁

Dasturchi va Dizayner

👉 @python_backend_dev
😁6👍2
Qiziqarli masala

Funksiyalar bilan ishlash qobilyatingizni tekshirgan holda javobingizni izohda qoldiring 👇🏻

👉 @python_backend_dev
👍6
Dataclasses modulining dataclass metodi

dataclass - dekorator hisoblanib, faqat ma'lumotlar qiymatlarini saqlash uchun mo'ljallangan sinfdir. dataclass oddiy classdan deyarli farq qilmaydi, faqat bunda oddiy classga qaraganda init, repr, str va boshqa metodlari oldindan mavjud, ularni qaytadan yozish talab etilmaydi.

Eslatma: Bu modul faqat Python 3.7 va undan yuqori versiyalarda ishlaydi.

Ko'proq tanishib chiqish uchun manbalar: DATAQUEST RealPython

👉 @python_backend_dev
👍6
This media is not supported in your browser
VIEW IN TELEGRAM
Bunisiga nima deysiz endi 😂

Ish boshlab olguncha sabrli boʻling 😁

👉 @python_backend_dev
👍2😁2
Forwarded from Javohir Berdiyev | Blog
Dasturlashni o'rganish uchun eng yaxshi manbalar to'plami

@javohir_webdev
👍5
REST API

REST API (Representational State Transfer Application Programming Interface) turli dasturiy taʼminot tizimlari oʻrtasida aloqani taʼminlash uchun HTTP soʻrovlaridan foydalanadigan veb-API (Ilova dasturlash interfeysi) turidir.

REST API-lar noyob URL manzillari (Uniform Resource Locators) bilan identifikatsiya qilingan resurslarda ishlaydi. Ushbu resurslarni GET, POST, PUT, PATCH va DELETE kabi oldindan belgilangan HTTP usullari to'plami yordamida boshqarish mumkin.

REST API javobi odatda JSON (JavaScript Object Notation) yoki XML (Extensible Markup Language) formatida bo‘ladi, bu mashinalar o‘qishi va tahlil qilishi oson bo‘lgan engil ma’lumotlar almashish formatidir. REST API-lar veb-ishlab chiqish, mobil ilovalarni ishlab chiqish va boshqa dasturiy ta'minot tizimlarida turli ilovalar bilan muloqot qilish va ma'lumotlarni almashish uchun keng qo'llaniladi.

REST API-lar turli maqsadlarda dasturiy ta'minotni ishlab chiqishda keng qo'llaniladi, jumladan:

1. Veb-ilovalarni yaratish: Veb-ishlab chiquvchilar o'z ilovalarini boshqa veb-xizmatlarga ulash yoki o'z ilovalarining turli qismlari o'rtasida ma'lumot almashish uchun REST API-dan foydalanishlari mumkin.

2. Mobil ilovalarni ishlab chiqish: REST API-lar mobil ilovalar ishlab chiquvchilari tomonidan serverlardan ma'lumotlarni olish va boshqa ilovalar bilan ma'lumot almashish uchun ishlatiladi.

3. Turli dasturiy ta'minot tizimlarini integratsiyalash: REST API'lari turli dasturiy ta'minot tizimlariga bir-biri bilan muloqot qilish imkonini beradi, bu esa turli platformalar va texnologiyalar bo'yicha ma'lumotlar almashinuvi va tizim integratsiyasini ta'minlaydi.

4. Mikroservislarni qurish: REST API-lar odatda mikroservislarni yaratish uchun ishlatiladi, ular kichik, mustaqil xizmatlar bo'lib, muayyan funktsiyalarni bajaradilar va kattaroq ilovalarni yaratish uchun birlashtirilishi mumkin.

5. Narsalar Interneti (IoT) ilovalarini yaratish: REST API-dan IoT qurilmalari va sensorlarini bulutga ulash uchun foydalanish mumkin, bu esa real vaqt rejimida ma’lumotlar almashish va tahlil qilish imkonini beradi.

Umuman olganda, REST API-lar turli dasturiy ta'minot tizimlari o'rtasida ma'lumot almashishning moslashuvchan va samarali usulini ta'minlaydi, bu esa birgalikda muammosiz ishlaydigan ilovalarni yaratish va birlashtirishni osonlashtiradi.

Manba: Linkedin

👉 @python_backend_dev
👍6
Ushbu misolda biz berilgan ro'yxatdagi manfiy sonlar sonini topishning uch xil usulini ko'rib chiqamiz.

Siz qaysi usullarni bilasiz? Izohda fikringizni qoldiring 👇

👉 @python_backend_dev
👍3👏2
Aqlli ishlash va qattiq ishlash

👉 @python_backend_dev
👍8
Pendulum

O'rnatish: pip install pendulum

Bu kutubxona sanalar, vaqtlar va vaqt zonalari bilan ishlash uchun toza va qulay API taqdim etadi. U mahalliy datetime moduliga asoslangan, lekin foydalanuvchilarga qulayroq interfeys va qo‘shimcha funksiyalarni taklif etadi:

- Turli vaqt zonalarini qo'llab-quvvatlash va ular o'rtasida konvertatsiya qilish.
- Vaqt zonalari orasidagi farqlarni oson boshqarish.
- Arifmetik, taqqoslash va kesish kabi umumiy operatsiyalarni bajarish uchun qulay API.
- Django, Flask va SQLAlchemy kabi mashhur uchinchi tomon kutubxonalari bilan integratsiya.

Ushbu misolda biz pendulum modulini import qilamiz va "Asia/Tashkent" vaqt mintaqasida 2023-yil 11-mayni ifodalovchi Pendulum datetime dt obyektini yaratamiz.

Datetime obyektini manipulyatsiya qilgandan so'ng, misolda vaqtni ko'rsatish uchun 'YYYY-AA-DD HH:dd:ss' format qatoridan foydalanamiz.

Ko'proq tanishib chiqish: GeeksForGeeks

👉 @python_backend_dev
👍5
😁😁
Bagsiz zerikib qolasiz, ishoning 😊

👉 @python_backend_dev
🤣10👍1😁1
SQL JOIN ma'lumotlar bilan bog'liq har qanday intervyuda eng ko'p takrorlanadigan savoldir.

Ba'zida eslash qiyin bo'lishi mumkin, bu yerda kontseptsiyani eslab qolish uchun juda kulgili misol 😊

👉 @python_backend_dev
👍4🤣2
Django Extensions

Agar siz Django loyihangizda sozlangan URL manzillarini ko'rsatish buyrug'ini izlayotgan bo'lsangiz, Django Extensions paketi tomonidan taqdim etilgan show_urls buyrug'idan foydalanishingiz mumkin.

Bu URL manzillarining formatlangan roʻyxatini hamda ularning tegishli koʻrish funksiyalarini koʻrsatadi.

Qanday foydalanish boʻyicha koʻrsatma yuqoridagi rasmda berilgan👆

👉 @python_backend_dev
👍7
get_object_or_404

Ma'lumotlar bazasidan bitta ob'ektni olishda aniqroq va ixchamroq kod uchun djangoning get_object_or_404() usulidan foydalaning.

Misol uchun:
Aytaylik, sizda Student nomli django modeli bor va siz bazadan ma'lum bir identifikatorga(pk) ega ma'lum bir studentni olishni xohlaysiz. Odatda post mavjud bo'lmagan holatlarni tekshirish uchun try-except blokidan foydalanasiz, lekin django bu jarayonni soddalashtiradigan get_object_or_404() nomli qulay usulni taqdim etadi.
get_object_or_404() yordamida siz try-except blokini yozish va istisnoni qo'lda boshqarish zaruriyatini yo'qotasiz. Bu toza va o'qilishi qulay bo'lgan kodni beradi. Bundan tashqari, django avtomatik ravishda 404 xato sahifasini chiqaradi.
Va bundan foydalanish uchun import qilishni unutmang.

Bu misolda bunisini yomon unisini yaxshi deyish biroz notoʻgʻri lekin bu usul qulaylik jihatdan yaxshiroq hisoblanadi va tavsiya etiladi.

Post yoqqan boʻlsa, albatta like bosishni unutmang 🙂

👉 @python_backend_dev
👍11
Nega va nima uchun? 🤔

👉 @python_backend_dev
👍3
Forwarded from Azim Pulat
Yozda Birga Kod Yozamiz ☀️ 2023

Dasturchilar uchun yozgi intensiv kurs

▶️ Boshlanadi: 10-iyul
📅 Davomiyligi: 4 hafta
💸 Qatnashish narxi: $1

🚦Yo'nalishlar:
- Front-end
- Back-end
- Algoritmlar

🔗 Topshiring: ybky.42.uz

👨‍🏫 Mentorlar:
- Azimjon Pulatov @ Amazon
- Diyorbek Sadullaev @ Pinterest
👍5