1. <form> va <input>
Bu elementlar foydalanuvchi bilan o‘zaro muloqot qilish uchun ishlatiladi. Quyidagi misolni ko‘rib chiqamiz:
Misol:
Izoh:
action: Form ma'lumotlarini qayerga yuborishni belgilaydi.
method: HTTP metodini belgilaydi (GET yoki POST).
required: Maydonni to‘ldirish majburiyligini belgilaydi.
2. <label>
<label> foydalanuvchiga maydonning ma'nosini tushuntiradi va kursorni to'g'ridan-to'g'ri input maydoniga yo'naltiradi.
Misol:
Izoh:
for: Ushbu atribut id bilan bir xil bo‘lishi kerak, shunda label bilan input bog‘lanadi.
3. <span>
<span> kichik qismlarni ajratish uchun ishlatiladi, odatda uslublash uchun.
Misol:
Izoh:
style atributi yordamida matn rangini o'zgartirdik.
4. Flexbox va Grid
Bu ikkisi elementlarni tartibga solishda qulaylik beradi.
Flexbox Misol:
Grid Misol:
Izoh:
Flexbox elementlarni bir qatorga yoki ustunga joylashtiradi.
Grid elementlarni kataklar ichida tartibga soladi.
Bu elementlar foydalanuvchi bilan o‘zaro muloqot qilish uchun ishlatiladi. Quyidagi misolni ko‘rib chiqamiz:
Misol:
<form action="/submit" method="post">
<label for="name">Ismingiz:</label>
<input type="text" id="name" name="name" placeholder="Ismingizni kiriting" required>
<label for="email">Email:</label>
<input type="email" id="email" name="email" placeholder="Emailni kiriting" required>
<button type="submit">Yuborish</button>
</form>
Izoh:
action: Form ma'lumotlarini qayerga yuborishni belgilaydi.
method: HTTP metodini belgilaydi (GET yoki POST).
required: Maydonni to‘ldirish majburiyligini belgilaydi.
2. <label>
<label> foydalanuvchiga maydonning ma'nosini tushuntiradi va kursorni to'g'ridan-to'g'ri input maydoniga yo'naltiradi.
Misol:
<label for="password">Parol:</label>
<input type="password" id="password" name="password" required>
Izoh:
for: Ushbu atribut id bilan bir xil bo‘lishi kerak, shunda label bilan input bog‘lanadi.
3. <span>
<span> kichik qismlarni ajratish uchun ishlatiladi, odatda uslublash uchun.
Misol:
<p>Parolingiz <span style="color: red;">notog'ri</span>.</p>
Izoh:
style atributi yordamida matn rangini o'zgartirdik.
4. Flexbox va Grid
Bu ikkisi elementlarni tartibga solishda qulaylik beradi.
Flexbox Misol:
<div style="display: flex; gap: 10px;">
<button>1</button>
<button>2</button>
<button>3</button>
</div>
Grid Misol:
<div style="display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px;">
<button>1</button>
<button>2</button>
<button>3</button>
</div>
Izoh:
Flexbox elementlarni bir qatorga yoki ustunga joylashtiradi.
Grid elementlarni kataklar ichida tartibga soladi.
5. box-shadow
Elementlarga soya qo‘shish uchun ishlatiladi.
Misol:
Izoh:
box-shadow: So‘yaning joylashuvi, tarqalishi va rangi.
6. :hover
Elementga sichqoncha olib borilganda uslubni o‘zgartirish uchun ishlatiladi.
Misol:
7. Form xatti-harakatlarini boshqarish
Bu yerda oddiy alert yordamida foydalanuvchiga xabar beramiz.
Misol:
8. Font Awesome ikonkalaridan foydalanish
Font Awesome yordamida ikonlarni qo'shish oson.
Misol:
Izoh:
<i> tegiga class orqali ikon nomini yozamiz (fa-user, fa-envelope).
Elementlarga soya qo‘shish uchun ishlatiladi.
Misol:
<div style="width: 100px; height: 100px; background: lightblue; box-shadow: 5px 5px 10px gray;">
Soyali quti
</div>
Izoh:
box-shadow: So‘yaning joylashuvi, tarqalishi va rangi.
6. :hover
Elementga sichqoncha olib borilganda uslubni o‘zgartirish uchun ishlatiladi.
Misol:
<button style="background: lightblue; border: none; padding: 10px; cursor: pointer;">
Hover qil
</button>
<style>
button:hover {
background: darkblue;
color: white;
}
</style>
7. Form xatti-harakatlarini boshqarish
Bu yerda oddiy alert yordamida foydalanuvchiga xabar beramiz.
Misol:
<form onsubmit="alert('Maʼlumot yuborildi!'); return false;">
<label for="username">Username:</label>
<input type="text" id="username" name="username" required>
<button type="submit">Submit</button>
</form>8. Font Awesome ikonkalaridan foydalanish
Font Awesome yordamida ikonlarni qo'shish oson.
Misol:
<head>
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet">
</head>
<body>
<i class="fa-solid fa-user"></i> Foydalanuvchi
<i class="fa-solid fa-envelope"></i> Email
</body>
Izoh:
<i> tegiga class orqali ikon nomini yozamiz (fa-user, fa-envelope).
Har bir server host bo‘lishi mumkin, lekin har bir host server emas.
from chatGpt
auf 😅
from chatGpt
Web framework — bu veb-ilovalar yaratishda ishlatiladigan dasturiy ta'minot kutubxonasi bo‘lib, u ko‘plab tayyor funksiyalarni taqdim etadi va dasturchilarga ishni tezlashtirishga yordam beradi.
align-items: center; /* Vertikal markazlash */
justify-content: center; /* Gorizontal markazlash */
height: 50px; /* To‘rtburchak balandligi */
width: 100px; /* To‘rtburchak eni */
This media is not supported in your browser
VIEW IN TELEGRAM
Nu hali bunaqa o'ylashmadiku 😁
ORDER BY ning to‘liq xususiyatlari
1️⃣ Bir nechta ustun bo‘yicha saralash
Agar saralashni bir nechta ustun bo‘yicha qilish kerak bo‘lsa, ORDER BY da bir nechta ustunni kiritish mumkin.
Misol:
Natija:
Avval yosh bo‘yicha o‘sish tartibida (ASC) saralaydi.
Agar yoshlar bir xil bo‘lsa, maosh bo‘yicha kamayish tartibida (DESC) saralaydi.
2️⃣ NULL qiymatlar bilan ishlash
SQL bazalarida NULL qiymatlar saralashga ta’sir qiladi:
Standart holatda: NULL qiymatlar eng kichik yoki eng katta sifatida qaraladi.
NULL`ni oxirida yoki boshida chiqarish:
Bu NULL qiymatlarni oxiriga qo‘yadi.
Agar NULLlarni boshiga chiqarish kerak bo‘lsa:
3️⃣ Matematik yoki mantiqiy amal bajarish
ORDER BY da hisob-kitob qilish mumkin.
Misol:
Hodimlarning soliq chegirmasidan keyingi haqiqiy maoshini hisoblab, kamayish tartibida saralaymiz:
Bu avval hisob-kitobni bajaradi, keyin natijani saralaydi.
4️⃣ Maxsus tartib bo‘yicha saralash (FIELD)
Agar ma’lum qiymatlar oldinga chiqishi kerak bo‘lsa, FIELD() dan foydalanish mumkin.
Misol:
Hodimlar "Direktor", "Menejer", "Ishchi" tartibida chiqishi kerak bo‘lsa:
Bu tartibni maxsus ko‘rinishda chiqaradi.
5️⃣ Matnni uzunligi bo‘yicha saralash
Agar matn ustunidagi so‘zlarni uzunligi bo‘yicha saralash kerak bo‘lsa:
Bu eng uzun ismlarni tepaga chiqaradi.
6️⃣ RANDOM tartib (tasodifiy chiqish)
Agar natijalarni tasodifiy chiqarish kerak bo‘lsa:
Bu har safar boshqa tartibda natija chiqaradi.
Hullas! ORDER BY juda kuchli! 😎
Oddiy saralash: ASC, DESC
Bir nechta ustun bo‘yicha saralash
NULL qiymatlarni oldinga yoki orqaga chiqarish
Matematik hisob-kitob va natijaga ko‘ra saralash
Maxsus tartib (FIELD()) bo‘yicha saralash
So‘z uzunligi bo‘yicha saralash
Tasodifiy tartibda chiqarish (RAND())
1️⃣ Bir nechta ustun bo‘yicha saralash
Agar saralashni bir nechta ustun bo‘yicha qilish kerak bo‘lsa, ORDER BY da bir nechta ustunni kiritish mumkin.
Misol:
SELECT * FROM hodimlar ORDER BY yosh ASC, maosh DESC;
Natija:
Avval yosh bo‘yicha o‘sish tartibida (ASC) saralaydi.
Agar yoshlar bir xil bo‘lsa, maosh bo‘yicha kamayish tartibida (DESC) saralaydi.
2️⃣ NULL qiymatlar bilan ishlash
SQL bazalarida NULL qiymatlar saralashga ta’sir qiladi:
Standart holatda: NULL qiymatlar eng kichik yoki eng katta sifatida qaraladi.
NULL`ni oxirida yoki boshida chiqarish:
SELECT * FROM hodimlar ORDER BY maosh DESC NULLS LAST;
Bu NULL qiymatlarni oxiriga qo‘yadi.
Agar NULLlarni boshiga chiqarish kerak bo‘lsa:
SELECT * FROM hodimlar ORDER BY maosh DESC NULLS FIRST;
3️⃣ Matematik yoki mantiqiy amal bajarish
ORDER BY da hisob-kitob qilish mumkin.
Misol:
Hodimlarning soliq chegirmasidan keyingi haqiqiy maoshini hisoblab, kamayish tartibida saralaymiz:
SELECT ism, (maosh - soliq) AS real_maosh
FROM hodimlar
ORDER BY real_maosh DESC;
Bu avval hisob-kitobni bajaradi, keyin natijani saralaydi.
4️⃣ Maxsus tartib bo‘yicha saralash (FIELD)
Agar ma’lum qiymatlar oldinga chiqishi kerak bo‘lsa, FIELD() dan foydalanish mumkin.
Misol:
Hodimlar "Direktor", "Menejer", "Ishchi" tartibida chiqishi kerak bo‘lsa:
SELECT * FROM hodimlar
ORDER BY FIELD(lavozim, 'Direktor', 'Menejer', 'Ishchi');
Bu tartibni maxsus ko‘rinishda chiqaradi.
5️⃣ Matnni uzunligi bo‘yicha saralash
Agar matn ustunidagi so‘zlarni uzunligi bo‘yicha saralash kerak bo‘lsa:
SELECT ism FROM hodimlar ORDER BY LENGTH(ism) DESC;
Bu eng uzun ismlarni tepaga chiqaradi.
6️⃣ RANDOM tartib (tasodifiy chiqish)
Agar natijalarni tasodifiy chiqarish kerak bo‘lsa:
SELECT * FROM hodimlar ORDER BY RAND();
Bu har safar boshqa tartibda natija chiqaradi.
Hullas! ORDER BY juda kuchli! 😎
Oddiy saralash: ASC, DESC
Bir nechta ustun bo‘yicha saralash
NULL qiymatlarni oldinga yoki orqaga chiqarish
Matematik hisob-kitob va natijaga ko‘ra saralash
Maxsus tartib (FIELD()) bo‘yicha saralash
So‘z uzunligi bo‘yicha saralash
Tasodifiy tartibda chiqarish (RAND())
Najot taʼlimda nimalar bo'laganligi haqida
Hullas kalom,
Biz 42 ta dars 3.5 oy foundation kursda o'qidik va 3-fevral kuni so'ngi darsimiz bo'ldi.
8-12 nafar atrofida guruhdoshlar va 2 nafar ustozimiz Asosiy ustoz Mirjamol Mirislomov va yordamchi ustozimiz Muhammad Yoqubjanovlar bilan birgalikda o'tkazilgan 3.5 oy ajoyib bo'ldi.
Kecha 15-yanvar kuni bizdan sinov imtihoni olindi. Shuning natijasiga qarab ikkinchi bosqichga o'tamiz(6-8 oy).
Ustozlarim o'rgatishgan bilimlariga rozi bo'lishsin agar natija ko'ngildagidek bo'lmasa ayib o'zimda bo'lgan bo'ladi.
Qiziq endi nima bo'lar ekan a soha bir oz o'ylantiryapdi.
Hullas kalom,
Biz 42 ta dars 3.5 oy foundation kursda o'qidik va 3-fevral kuni so'ngi darsimiz bo'ldi.
8-12 nafar atrofida guruhdoshlar va 2 nafar ustozimiz Asosiy ustoz Mirjamol Mirislomov va yordamchi ustozimiz Muhammad Yoqubjanovlar bilan birgalikda o'tkazilgan 3.5 oy ajoyib bo'ldi.
Kecha 15-yanvar kuni bizdan sinov imtihoni olindi. Shuning natijasiga qarab ikkinchi bosqichga o'tamiz(6-8 oy).
Ustozlarim o'rgatishgan bilimlariga rozi bo'lishsin agar natija ko'ngildagidek bo'lmasa ayib o'zimda bo'lgan bo'ladi.
Qiziq endi nima bo'lar ekan a soha bir oz o'ylantiryapdi.
👏1
<!DOCTYPE html>
<html>
<head>
<title>Baholar</title>
<link rel="stylesheet" href="index.css">
</head>
<body class="body">
<h1>O`quvchilar baholari</h1>
<table border style="margin: auto;" >
<tr style="background-color: aliceblue;">
<th>#</th>
<th>Ism Familya</th>
<th>matematika</th>
<th>fizika</th>
<th>Ingliz tili</th>
<tr>
<td></td>
<td>Ali olimov</td>
<td>90</td>
<td>85</td>
<td>88</td>
</tr>
<tr>
<td>2</td>
<td>Laylo Karimova</td>
<td>75</td>
<td>80</td>
<td>78</td>
</tr>
<tr>
<td>3</td>
<td>Jasur Rustamova</td>
<td>88</td>
<td>92</td>
<td>85</td>
</tr>
<tr>
<td>4</td>
<td>Akmal Xolmatova</td>
<td>chetlatilgan</td>
<td>chetlatilgan</td>
<td>chetlatilgan</td>
</tr>
<tr>
<td>5</td>
<td>Ali olimov</td>
<td>90</td>
<td>85</td>
<td>88</td>
</tr>
</table>
</body>
</html>
def process_tuples_in_list(data: list) -> list:
result = []
for item in data:
if isinstance(item, tuple): # Agar element tuple bo'lsa
if len(item) > 3:
# 3 tadan ko‘p bo‘lsa, kamayish tartibida saralab, faqat eng katta 3 tasini olamiz
processed_tuple = tuple(sorted(item, reverse=True)[:3])
else:
# Aks holda, shunchaki o‘sish tartibida saralaymiz
processed_tuple = tuple(sorted(item))
result.append(processed_tuple)
else:
# Agar tuple bo‘lmasa, o‘z holicha qo‘shamiz
result.append(item)
return result
# Test qilish uchun
data2 = [(10, 20, 30, 40), (15, 5), 40, (7, 8, 50, 3)]
print(process_tuples_in_list(data2))
isinstance() Pythonning maxsus funksiyasi bo‘lib, u berilgan obyekt ma’lum bir turga (type) tegishli yoki yo‘qligini tekshiradi.
✅ Foydalanish tartibi:
📌 Misollar:
✅ Ko‘p tur bilan tekshirish
isinstance() bir nechta tur bilan ham tekshira oladi.
Agar obyekt birorta ko‘rsatilgan turga tegishli bo‘lsa, True qaytaradi:
❓ Nega kerak?
Agar faqat ma’lum turdagi obyektlar ustida ishlash kerak bo‘lsa, isinstance() yordam beradi.
Misol:
Faqat tuple larni qayta ishlash:
Natija:
Ro‘yxat [5, 6, 7] va son 42 tekshirishdan o‘tmaydi, faqat tuple lar saralanadi.
✅ Foydalanish tartibi:
isinstance(obj, class_or_tuple)
🔹 obj → Tekshirilayotgan obyekt
🔹 class_or_tuple → Qaysi turga tegishli ekanini tekshirish
🔹 Natija → True yoki False qaytaradi
📌 Misollar:
print(isinstance(5, int)) # True, chunki 5 bu integer
print(isinstance(5.0, int)) # False, float
print(isinstance("hello", str)) # True, chunki bu string
print(isinstance([1, 2, 3], list)) # True, chunki bu ro‘yxat (list)
print(isinstance((1, 2, 3), tuple)) # True, chunki bu tuple
print(isinstance(42, tuple)) # False, chunki bu integer
✅ Ko‘p tur bilan tekshirish
isinstance() bir nechta tur bilan ham tekshira oladi.
Agar obyekt birorta ko‘rsatilgan turga tegishli bo‘lsa, True qaytaradi:
print(isinstance(5, (int, float))) # True, chunki 5 int
print(isinstance(3.14, (int, float))) # True, chunki 3.14 float
print(isinstance("hello", (int, float))) # False, string emas
❓ Nega kerak?
Agar faqat ma’lum turdagi obyektlar ustida ishlash kerak bo‘lsa, isinstance() yordam beradi.
Misol:
Faqat tuple larni qayta ishlash:
data = [(10, 20, 30), [5, 6, 7], 42, (15, 25)]
for item in data:
if isinstance(item, tuple): # Faqat tuple lar uchun ishlaydi
print(sorted(item, reverse=True)) # Saralash
Natija:
[30, 20, 10]
[25, 15]
Ro‘yxat [5, 6, 7] va son 42 tekshirishdan o‘tmaydi, faqat tuple lar saralanadi.
1️⃣ Birinchi Dart kodi
Dart-da kod yozish oddiy. Keling, "Salom, Dunyo!" dasturini yozamiz:
📌 Tushuntirish:
void main() – Har qanday Dart dasturi main() funksiyasidan boshlanadi.
print('Salom, Dunyo!'); – Ekranga yozuv chiqarish uchun print() ishlatiladi.
2️⃣ O‘zgaruvchilar va ma’lumot turlari
Dart’da statically typed (aniq tur bilan) yoki dynamic typed (turini aniqlamasdan) o‘zgaruvchilar ishlatilishi mumkin.
📌 Tushuntirish:
int – Butun sonlar (25)
double – O‘nlik kasr (8.5)
String – Matn ('Ali')
bool – Mantiqiy qiymat (true yoki false)
Shuningdek, dynamic ishlatib, o‘zgaruvchi tipini yozmaslik ham mumkin:
3️⃣ Shart operatorlari (if-else)
if-else bilan shartlarni tekshirish mumkin:
📌 Tushuntirish:
if (shart) – Agar shart to‘g‘ri bo‘lsa, kod ishlaydi
else – Aks holda, boshqa kod bajariladi
4️⃣ Loop (for, while, do-while)
Takrorlanadigan amallar uchun for yoki while ishlatiladi.
🔹 For tsikli:
🔹 While tsikli:
📌 Farqi:
For – Aniq takrorlanishlar uchun
While – Shart bajarilguncha ishlaydi
5️⃣ Funksiya yaratish
Dart’da funksiya quyidagicha yoziladi:
📌 Tushuntirish:
void salomBer(String ism) – Foydalanuvchidan ism oladi va "Salom" deb yozadi
salomBer('Ali'); – Funksiyani chaqiramiz va ismni kiritamiz
Dart-da kod yozish oddiy. Keling, "Salom, Dunyo!" dasturini yozamiz:
void main() {
print('Salom, Dunyo!');
}📌 Tushuntirish:
void main() – Har qanday Dart dasturi main() funksiyasidan boshlanadi.
print('Salom, Dunyo!'); – Ekranga yozuv chiqarish uchun print() ishlatiladi.
2️⃣ O‘zgaruvchilar va ma’lumot turlari
Dart’da statically typed (aniq tur bilan) yoki dynamic typed (turini aniqlamasdan) o‘zgaruvchilar ishlatilishi mumkin.
void main() {
int yosh = 25; // Butun son
double bal = 8.5; // Haqiqiy son
String ism = 'Ali'; // Matn
bool to'g'ri = true; // Mantiqiy qiymat
print(ism);
print(yosh);
}📌 Tushuntirish:
int – Butun sonlar (25)
double – O‘nlik kasr (8.5)
String – Matn ('Ali')
bool – Mantiqiy qiymat (true yoki false)
Shuningdek, dynamic ishlatib, o‘zgaruvchi tipini yozmaslik ham mumkin:
void main() {
var ism = 'Ali'; // Dart o‘zi tipni aniqlaydi (String)
dynamic yosh = 25; // Dinamik tip
yosh = 'yigirma besh'; // dynamic bo‘lgani uchun o‘zgartirish mumkin
print(ism);
print(yosh);
}3️⃣ Shart operatorlari (if-else)
if-else bilan shartlarni tekshirish mumkin:
void main() {
int yosh = 20;
if (yosh >= 18) {
print('Siz balog‘at yoshidasiz.');
} else {
print('Siz hali balog‘at yoshiga yetmagansiz.');
}
}📌 Tushuntirish:
if (shart) – Agar shart to‘g‘ri bo‘lsa, kod ishlaydi
else – Aks holda, boshqa kod bajariladi
4️⃣ Loop (for, while, do-while)
Takrorlanadigan amallar uchun for yoki while ishlatiladi.
🔹 For tsikli:
void main() {
for (int i = 1; i <= 5; i++) {
print('Soni: $i');
}
}🔹 While tsikli:
void main() {
int i = 1;
while (i <= 5) {
print('Soni: $i');
i++;
}
}📌 Farqi:
For – Aniq takrorlanishlar uchun
While – Shart bajarilguncha ishlaydi
5️⃣ Funksiya yaratish
Dart’da funksiya quyidagicha yoziladi:
void salomBer(String ism) {
print('Salom, $ism!');
}
void main() {
salomBer('Ali'); // Funksiyani chaqirish
}📌 Tushuntirish:
void salomBer(String ism) – Foydalanuvchidan ism oladi va "Salom" deb yozadi
salomBer('Ali'); – Funksiyani chaqiramiz va ismni kiritamiz
Dart tilida nima uchun void main() deb yozamiz main() deb boshlasak ham boladiku natijaga tasir qilmaydi
Nima uchun Dartda ; (nuqta-vergul) shart, pythonda buni qo`ymaslikni yo`lini topshibdiyu dartda esa yoq.
1️⃣ "Kod yozish madaniyati bor!"
– Xuddi maktabda diktant yozganda tinish belgilariga e’tibor berganing kabi, kod yozganda ham tartib bo‘lishi kerak. Bu kodni boshqalarga oson tushunish imkonini beradi.
2️⃣"Dart o‘zi void ni tavsiya qiladi!"
– Dart 2.12 versiyasidan boshlab null safety tizimi joriy qilingan. Shu sababli void aniq yozilsa, kod yaxshiroq boshqariladi va tushunarli bo‘ladi.
3️⃣ "Katta loyihalarda void kerak bo‘ladi!"
– Kichik dasturlarda farq sezilmaydi, lekin agar loyiha murakkablashsa, kodni boshqarish oson bo‘lishi uchun ancha qat’iy qoida kerak bo‘ladi.
Nima uchun Dartda ; (nuqta-vergul) shart, pythonda buni qo`ymaslikni yo`lini topshibdiyu dartda esa yoq.
1️⃣ Dart kompilyatsiya qilinadigan til bo‘lib, kodni aniq tushunish uchun ; (nuqta-vergul) bilan qator tugashini belgilaydi. Agar ; (nuqta-vergul) bo‘lmasa, xatolik yuzaga keladi.
2️⃣ Python esa interpretatsiya qilinadigan til bo‘lib, satr oxirini avtomatik aniqlay oladi, shuning uchun ; qo‘yish majburiy emas.
Main: Qanchalik kod yozishni soddalashtirsak, jarayon shunchalik sekinlashadi. Python qulay, lekin sekinroq ishlaydi, chunki u satr chegaralarini o‘zi hisoblab chiqadi. Dart esa ; talab qilish orqali kodni tezroq kompilyatsiya qiladi.