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
Fulfil Education
Backend bo'yicha bepul onlayn ochiq darsimizga ro'yxatdan o'ting — Backend dasturlashni JavaScript, NodeJS orqali tajribali ustozdan noldan mutaxassisgacha o'rganing. — JavaScript, NodeJS Backend kursimiz haftada 3 marta 2 soatdan onlayn Zoom platformasida…
Assalomu alaykum barchaga shunchaki ochiq darsga qatnashganiz uchun Javascript asoslari darslari tekinga berilarkan. Bu imkoniyatdan quruq qolmanglar deb buni sizlar uchun ulashdim 🫡
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Kod yozishdagi Junior va Seniorning farqi 😊
Palindrommi yoki palindrom emasligini aniqlash.
Palindrom - ikki tarafdan ham bir xil oʻqiladigan sonlar va matnlarga aytiladi.

👉 @python_backend_dev
👍3💯2
Forwarded from Jakhongir Rakhmonov - IT
Dasturchi sifatida o’sishning eng yaxshi usuli

Bu judda ham oddiy. Qilayotgan ishingizni to’g’ri tanlash kerak. Juda qiyin ish tanlab qo’ysangiz ham, juda oson ish tanlab qo’ysangiz ham ma’lum bir muammolarga duch kelasiz.

Agar qilmoqchi bo’lgan ishingiz juda oson bo’lsa sizda o’sish bo’lmaydi. Chunki bu ishni siz ortiqcha qiyinchiliklarsiz bitira olasiz. Agar juda qiyin bo’lsa esa sizda qiziqish yo’qolib qolish ehtimoli katta bo’ladi. Juda ham qiynalib ketganingizdan bu ishni tashlab qo’yishingiz mumkin.

Shuning uchun ham o’zingizning darajangizdan sal balandroq bo’lgan ish tanlash kerak. Masalan sizning darjangizni “x” deb olsak, qilishingiz kerak bo’lgan ish “x+1” yoki “x+2” darajasida bo’lishi kerak, “x+10” yoki “x-5” emas. Natijada siz o’zingiz qiziqib, izlanib, bilmagan joyingizni o’rganib bu ishni ohirigacha yetkazasiz va sizda progress bo’ladi.

Seniorlar ham mana shu mantiq bilan o’zining jamoasidagi junior yoki middlelarga vazifalar tanlab berishlari kerak. Aynan seniorlar va menejerlar sabab dasturchilar ishdan ketgan holatlar juda ko’p kuzatiladi. “Ha?” desangiz “qiladigan ishlarim yoqmasdi” degan javobni olasiz.

Work smart.

@jakhonrakhmonov
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Assalomu alaykum barchaga salomatmisizlar. Kanalning yangi profil rasmiga fikrlaringizni izohda qoldiring 👇

Yoki qaysi biri maʼqulroq scrn qilib izohda qoldiringlar 🙂

👉 @python_backend_dev
👍3
Nested Serializers in DRF

Bizda ikkita Author va Book modellari mavjud va ikki modeldan daraxtsimon(yoki ichma-ich deymizmi) API chiqarish kerak, bu quyidagicha amalga oshiriladi.
Misol uchun bitta authorga bir nechta kitob tegishli bo'lishi mumkin. Yoki boshqa bi misol, bir xil xarakteristikali bir necha brendli telefon va kompyuterlarni olish mumkin.

Book model:
class Book(models.Model):
# relations
author = models.ForeignKey(Author, on_delete=models.CASCADE, related_name='books')
# ...

from rest_framework import serializers
from .models import Author, Book


class BookSerializer(serializers.ModelSerializer):
class Meta:
model = Book
fields = ['id', 'title', 'publication_date', 'is_published']


class AuthorSerializer(serializers.ModelSerializer):
book = BookSerializer(source='books', many=True, read_only=True)

class Meta:
model = Author
fields = ['id', 'name', 'email', 'book']

Savollar boʻlsa izohga marhamat 👇

👉 @python_backend_dev
👍3
🌙 Ramazon hayitingiz muborak boʻlsin aziz kanalimiz aʼzolari 🕌
👍5
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