Mundarija (25)
- 1. Kirish va motivatsiya
- 2. Nazariya — chuqur tushuntirish
- 2.1. Umumiy manzara — o'n bosqich
- 2.2. 1–2-bosqich: matndan faylgacha
- 2.3. 3–4-bosqich: python qayerdan topiladi
- 2.4. 5-bosqich: jarayon yaratiladi
- 2.5. 6–7-bosqich: o'qish va kompilyatsiya
- 2.6. 8-bosqich: virtual mashina bajaradi
- 2.7. 9-bosqich: print aslida nima qiladi
- 2.8. 10-bosqich: tizim chaqiruvi va ekran
- 2.9. Butun zanjir — bir joyda
- 2.10. Xato qayerda bo'lishi mumkin — diagnostika jadvali
- 3. Tez ma'lumotnoma
- 4. Batafsil misollar
- Misol 1 — Zanjirni o'z ko'zingiz bilan ko'rish
- Misol 2 — Bytecode'ni ko'rish (7-bosqich)
- Misol 3 — Buferlash muammosini ko'rish va hal qilish
- Misol 4 — stdout ni yo'naltirish (9-bosqich)
- 5. To'g'ri va noto'g'ri tushunishlar
- 6. Keng tarqalgan xatolar va yechimlari
- 7. Integratsiya — bu bilim qayerda kerak bo'ladi
- 8. Eng yaxshi amaliyotlar
- 9. Amaliy topshiriq
- Xulosa
- 1-QISM YAKUNLANDI
1.8-dars: "Salom, dunyo!" ortidagi jarayon — klaviaturadan ekrangacha
1-QISM — KOMPYUTER VA DASTURLASH · 8-dars · 1-qismning yakuni
1. Kirish va motivatsiya
Bu — 1-qismning oxirgi darsi. Va u eng qiziqarlisi, chunki biz o'rgangan hamma narsani bitta zanjirga bog'laymiz.
Deyarli har bir dasturlash kursi shu qatordan boshlanadi:
print("Salom, dunyo!")Odatda o'qituvchi "buni yozing, ishga tushiring, ajoyib — davom etamiz" deydi. Biz boshqacha qilamiz.
Chunki bu bitta qator ortida hayratlanarli murakkab zanjir turibdi. Siz klavishani bosganingizdan ekranda harf paydo bo'lgunicha o'nlab bosqich o'tiladi: operatsion tizim, fayl tizimi, interpretator, bytecode, virtual mashina, tizim chaqiruvlari, drayver, video karta.
Nega bu kerak?
Chunki muammo yuzaga kelganda siz zanjirning qaysi bo'g'inida ekanini bilishingiz kerak. Dastur ishlamayaptimi? Fayl topilmadimi? Kodlash buzuqmi? Chiqish ko'rinmayaptimi? Har biri boshqa bo'g'inda.
Bu darsni tugatgach:
python main.pyyozganingizda aniq nima sodir bo'lishini bilasizPATH,stdout,tizim chaqiruvi(system call) nima ekanini tushunasiz- Nega ba'zan chiqish darhol ko'rinmaydi (buferlash) va buni qanday hal qilishni bilasiz
- 1–7-darslardagi barcha tushuncha bir manzaraga birlashadi
2. Nazariya — chuqur tushuntirish
2.1. Umumiy manzara — o'n bosqich
1. Siz klaviaturada yozasiz
2. Muharrir matnni faylga saqlaydi (disk)
3. Terminalda "python main.py" deb yozasiz
4. Operatsion tizim "python" ni topadi (PATH)
5. OT jarayon yaratadi va Pythonni RAM'ga yuklaydi
6. Python main.py faylini o'qiydi
7. Python kodni bytecode'ga kompilyatsiya qiladi
8. Virtual mashina bytecode'ni bajaradi
9. print() tizim chaqiruvini amalga oshiradi
10. OT matnni terminalga, terminal ekranga chiqaradiEndi har birini ko'rib chiqamiz.
2.2. 1–2-bosqich: matndan faylgacha
Siz print("Salom, dunyo!") deb yozasiz. Bu — matn, boshqa hech narsa emas.
Muharrir uni faylga saqlaganda har bir belgi 1-darsda o'rganganimizdek songa aylanadi:
p → 112
r → 114
i → 105
n → 110
t → 116
( → 40
" → 34
S → 83
...Fayl diskda shu sonlar ketma-ketligi sifatida yotadi. .py kengaytmasi — bu faqat nom. Fayl ichida hech qanday "men Python faylman" degan belgi yo'q.
Muhim: kodlash muhim. Fayl UTF-8 da saqlanishi kerak. Python 3 buni sukut bo'yicha kutadi. Agar muharrir boshqa kodlashda saqlasa, o'zbekcha harflar buziladi.
2.3. 3–4-bosqich: python qayerdan topiladi
Terminalda python main.py deb yozasiz. Operatsion tizim birinchi savol beradi: python degan dastur qayerda?
Javobni PATH o'zgaruvchisidan qidiradi. PATH — bu papkalar ro'yxati:
Windows:
C:\Python312\
C:\Python312\Scripts\
C:\Windows\system32
...
Linux/macOS:
/usr/local/bin
/usr/bin
/bin
...OT ro'yxatni yuqoridan pastga ko'rib chiqadi va python nomli bajariladigan faylni qidiradi. Topsa — to'xtaydi va o'shani ishlatadi.
Topmasa:
'python' is not recognized as an internal or external commandyoki
command not found: pythonBu boshlovchilar duch keladigan eng birinchi xato. Sababi: Python o'rnatilgan, lekin PATH ga qo'shilmagan. Windows'da o'rnatishda "Add Python to PATH" katagini belgilash kerak — buni 2-qismda batafsil ko'ramiz.
Nozik jihat: PATH da bir nechta Python bo'lsa, birinchi topilgani ishlatiladi. Aynan shuning uchun ba'zida
python --versionkutilmagan versiyani ko'rsatadi. Virtual muhit ham shu mexanizmga tayanadi: u o'z papkasini PATH ning boshiga qo'yadi.
2.4. 5-bosqich: jarayon yaratiladi
OT python.exe faylini topgach:
- Uni diskdan RAM'ga yuklaydi
- Yangi jarayon (process) yaratadi
- Jarayonga o'z xotira sohasini ajratadi
- Unga argumentlarni uzatadi:
["python", "main.py"] - Boshqaruvni Pythonga topshiradi
2-darsda ko'rganimizdek, jarayon xotirasi bo'linadi: kod, statik ma'lumot, heap, stack.
Har bir jarayon izolyatsiya qilingan. Sizning dasturingiz boshqa dasturning xotirasiga kira olmaydi. Bu xavfsizlik va barqarorlik uchun.
2.5. 6–7-bosqich: o'qish va kompilyatsiya
Python endi ishlayapti. U argumentga qaraydi: main.py.
Faylni o'qiydi. Fayl tizimidan baytlar ketma-ketligini oladi va UTF-8 sifatida matnga o'giradi.
Tahlil qiladi (parsing). Matnni tuzilmaga aylantiradi:
"print("Salom, dunyo!")"
↓
Tokenlar: [NAME:print] [LPAR:(] [STRING:"Salom, dunyo!"] [RPAR:)]
↓
AST (Abstrakt sintaksis daraxti):
Call
├── func: Name(print)
└── args: [Constant("Salom, dunyo!")]AST (Abstract Syntax Tree) — kodning daraxt ko'rinishidagi tuzilmasi. Aynan shu bosqichda SyntaxError chiqadi: agar qavs yopilmagan bo'lsa, daraxt qurilmaydi.
Bytecode'ga o'giradi:
LOAD_NAME print
PUSH_NULL
LOAD_CONST 'Salom, dunyo!'
CALL 1
POP_TOP
RETURN_CONST NoneBu — 2 va 4-darslarda ko'rgan bytecode.
Eslatma:
main.pyuchun.pycfayli saqlanmaydi. Python faqatimportqilingan modullar uchun__pycache__yaratadi. Sababi: asosiy faylni har safar qayta o'qish baribir kerak.
2.6. 8-bosqich: virtual mashina bajaradi
Endi PVM (Python Virtual Machine) bytecode'ni buyruq-buyruq bajaradi.
LOAD_NAME print — "print" nomini qidiradi:
1. Mahalliy o'zgaruvchilar orasida bormi? yo'q
2. Global o'zgaruvchilar orasida bormi? yo'q
3. Ichki (builtins) funksiyalar orasida? HA — topildiBu tartib LEGB deb ataladi va uni 7-qismda batafsil o'rganamiz. Agar hech qayerdan topilmasa — NameError.
LOAD_CONST 'Salom, dunyo!' — satr obyektini stekka qo'yadi. Diqqat: satr allaqachon xotirada mavjud, u kompilyatsiya paytida yaratilgan.
CALL 1 — funksiyani bitta argument bilan chaqiradi.
Endi eng qiziq qismi boshlanadi — print ning ichi.
2.7. 9-bosqich: print aslida nima qiladi
print sodda ko'rinadi, lekin u bir necha ish bajaradi:
1. Argumentni matnga o'giradi (str() chaqiriladi)
2. Ajratgichlarni qo'shadi (bir nechta argument bo'lsa — bo'sh joy)
3. Oxiriga qator tashlash belgisini qo'shadi (\n)
4. Natijani sys.stdout ga yozadisys.stdout — "standart chiqish" (standard output). Bu fayl kabi obyekt. Odatda u terminalga ulangan, lekin uni o'zgartirish mumkin:
python main.py > natija.txt # chiqish faylga ketadi
python main.py | grep "Salom" # chiqish boshqa dasturga ketadiDasturingiz o'zgarmaydi — u baribir stdout ga yozadi. Faqat stdout qayerga ulangani o'zgaradi. Bu Unix falsafasining asosiy g'oyasi.
Buferlash — muhim nozik jihat.
stdout har bir belgini darhol yubormaydi. U buferga to'playdi va to'lgach yoki qator tugagach yuboradi. Sababi — samaradorlik: har belgi uchun alohida tizim chaqiruvi qilish qimmat.
Bu ba'zida chalkashtiradi:
import time
print("Boshlandi", end="") # qator tashlash yo'q
time.sleep(5) # 5 soniya kutish
print(" — tugadi")
# Ba'zi holatda "Boshlandi" darhol ko'rinmaydi,
# ikkalasi 5 soniyadan keyin birga chiqadiYechim:
print("Boshlandi", end="", flush=True) # buferni majburan bo'shatishBu bilim uzoq ishlaydigan dasturlarda (progress ko'rsatish) va loglashda muhim.
2.8. 10-bosqich: tizim chaqiruvi va ekran
stdout ga yozish oxir-oqibat tizim chaqiruviga (system call) aylanadi.
Tizim chaqiruvi — dasturning operatsion tizimdan xizmat so'rashi. Dastur o'zi ekranga yoza olmaydi — bu imtiyozli amal. U OT dan so'raydi:
Python jarayoni
│
│ write(1, "Salom, dunyo!\n", 14)
│ (1 = stdout, matn, uzunlik)
↓
Operatsion tizim yadrosi (kernel)
│
↓
Terminal dasturi
│
↓
Grafik tizim → video karta → ekranNega dastur to'g'ridan-to'g'ri ekranga yoza olmaydi? Xavfsizlik uchun. Aks holda har qanday dastur boshqasining oynasiga yozishi mumkin bo'lardi.
Terminal matnni oladi, shriftga qarab har bir harfning shaklini aniqlaydi, piksellarga aylantiradi va ekranga chizadi.
Va nihoyat siz "Salom, dunyo!" ni ko'rasiz.
2.9. Butun zanjir — bir joyda
┌─────────────────────────────────────────────────────────┐
│ 1. Siz yozasiz: print("Salom, dunyo!") │
│ ↓ │
│ 2. Muharrir faylga saqlaydi (UTF-8, disk) │
│ ↓ │
│ 3. Terminal: python main.py │
│ ↓ │
│ 4. OT PATH dan python ni topadi │
│ ↓ │
│ 5. Jarayon yaratiladi, Python RAM'ga yuklanadi │
│ ↓ │
│ 6. Python faylni o'qiydi (disk → RAM) │
│ ↓ │
│ 7. Tahlil → AST → bytecode │
│ ↓ │
│ 8. PVM bytecode'ni bajaradi │
│ ↓ │
│ 9. print → str() → bufer → sys.stdout │
│ ↓ │
│ 10. Tizim chaqiruvi → OT → terminal → ekran │
└─────────────────────────────────────────────────────────┘Bularning hammasi millisekundlarda sodir bo'ladi.
2.10. Xato qayerda bo'lishi mumkin — diagnostika jadvali
Endi eng amaliy qism. Har bosqichda o'ziga xos xato bo'ladi:
| Bosqich | Xato | Nima demak |
|---|---|---|
| 3–4 | 'python' is not recognized |
PATH da yo'q. Qayta o'rnatish yoki PATH ga qo'shish |
| 6 | No such file or directory |
Fayl nomi noto'g'ri yoki boshqa papkadasiz |
| 6 | SyntaxError: invalid character |
Fayl kodlashi noto'g'ri |
| 7 | SyntaxError |
Yozuv xatosi — qavs, ikki nuqta, tirnoq |
| 7 | IndentationError |
Chekinish noto'g'ri |
| 8 | NameError |
Nom topilmadi (LEGB bo'yicha) |
| 8 | TypeError, ValueError |
Amal noto'g'ri turda |
| 9 | UnicodeEncodeError |
Terminal belgini ko'rsata olmaydi |
| 9 | Chiqish ko'rinmaydi | Buferlash — flush=True kerak |
Bu jadval — dasturchining diagnostika vositasi. Xato ko'rganingizda "bu qaysi bosqich?" deb so'rang — javob sizni to'g'ri yo'nalishga olib boradi.
3. Tez ma'lumotnoma
O'n bosqich
yozish → saqlash → buyruq → PATH → jarayon →
o'qish → bytecode → PVM → stdout → ekranAsosiy tushunchalar
PATH — OT dasturlarni qidiradigan papkalar ro'yxati
Jarayon — ishlab turgan dastur, o'z xotirasi bilan
AST — kodning daraxt ko'rinishi
stdout — standart chiqish (terminal yoki fayl)
Tizim chaqiruvi — OT dan xizmat so'rash
Buferlash — chiqishni to'plab yuborishBuferni bo'shatish
print("matn", flush=True)4. Batafsil misollar
Bu misollarni 2-qismda Python o'rnatgach sinab ko'rasiz.
Misol 1 — Zanjirni o'z ko'zingiz bilan ko'rish
import sys
import os
# 4-bosqich: qaysi Python ishlayapti
print("Python joylashuvi:", sys.executable)
# C:\Python312\python.exe
# 5-bosqich: jarayon ma'lumoti
print("Jarayon ID (PID):", os.getpid())
# 15432
# 3-bosqich: buyruq argumentlari
print("Argumentlar:", sys.argv)
# ['main.py']
# 9-bosqich: chiqish qayerga ulangan
print("stdout terminalgami:", sys.stdout.isatty())
# True — terminalga
# False — faylga yoki boshqa dasturga yo'naltirilganNima ko'rsatdi: 2.3–2.7-bo'limlar. isatty() ayniqsa qiziq: uni sinab ko'ring, keyin python main.py > natija.txt deb ishga tushiring va farqni ko'ring.
Misol 2 — Bytecode'ni ko'rish (7-bosqich)
import dis
kod = 'print("Salom, dunyo!")'
# Kompilyatsiya qilib, bytecode'ni ko'rsatish
dis.dis(compile(kod, "<misol>", "exec"))Natija (Python 3.12):
0 RESUME 0
1 LOAD_NAME 0 (print)
PUSH_NULL
LOAD_CONST 0 ('Salom, dunyo!')
CALL 1
POP_TOP
RETURN_CONST 1 (None)Nima ko'rsatdi: 2.5 va 2.6-bo'limlar. LOAD_NAME print — bu 2.6-bo'limdagi LEGB qidiruvi. CALL 1 — funksiyani bitta argument bilan chaqirish.
Misol 3 — Buferlash muammosini ko'rish va hal qilish
import time
print("=== Buferlashsiz ===")
for i in range(5):
print(f"Qadam {i+1}...", end=" ")
time.sleep(1)
print()
# Ba'zi tizimda hammasi 5 soniyadan keyin BIRGA chiqadi
print("\n=== flush bilan ===")
for i in range(5):
print(f"Qadam {i+1}...", end=" ", flush=True)
time.sleep(1)
print()
# Endi har soniyada bittadan chiqadiNima ko'rsatdi: 2.7-bo'lim. Bu farq uzoq ishlaydigan dasturlarda muhim: foydalanuvchi dastur qotib qolgan deb o'ylamasligi kerak.
Misol 4 — stdout ni yo'naltirish (9-bosqich)
import sys
# Odatdagi chiqish
print("Bu terminalga chiqadi")
# stdout ni faylga yo'naltirish
with open("natija.txt", "w", encoding="utf-8") as fayl:
eski_stdout = sys.stdout
sys.stdout = fayl
print("Bu faylga yoziladi")
print("Bu ham faylga")
sys.stdout = eski_stdout # qaytaramiz
print("Bu yana terminalga chiqadi")
# natija.txt ichida ikkita qator bo'ladiXuddi shu narsani terminaldan ham qilish mumkin — kodni o'zgartirmasdan:
python main.py > natija.txt # chiqishni faylga
python main.py 2> xatolar.txt # xatolarni faylga
python main.py | grep "Salom" # boshqa dasturgaNima ko'rsatdi: 2.7-bo'limdagi asosiy g'oya — print ekranga yozmaydi, u stdout ga yozadi. stdout qayerga ulangani dasturdan tashqarida hal qilinadi.
5. To'g'ri va noto'g'ri tushunishlar
| Noto'g'ri fikr | To'g'risi |
|---|---|
"print ekranga yozadi" |
print sys.stdout ga yozadi. U terminalga, faylga yoki boshqa dasturga ulangan bo'lishi mumkin |
| "Dastur to'g'ridan-to'g'ri ekranga chizadi" | Yo'q, OT dan tizim chaqiruvi orqali so'raydi. Bu xavfsizlik uchun |
".py kengaytmasi faylni Python fayli qiladi" |
Kengaytma — faqat nom. Ichida oddiy matn |
"python buyrug'i doim bir xil Pythonni ishlatadi" |
PATH dagi birinchi topilganini. Virtual muhit shuni o'zgartiradi |
"print darhol chiqaradi" |
Buferlash bor. Kerak bo'lsa flush=True |
"main.py uchun ham .pyc yaratiladi" |
Yo'q, faqat import qilingan modullar uchun |
| "Xato — bitta narsa" | Xato qaysi bosqichda yuz berganiga qarab turlicha. 2.10-jadvalga qarang |
6. Keng tarqalgan xatolar va yechimlari
1. 'python' is not recognized
Bosqich: 4 (PATH)
Sabab: Python o'rnatilmagan yoki PATH ga qo'shilmagan.
Yechim: qayta o'rnatishda "Add Python to PATH" ni belgilang. Windows'da py buyrug'ini ham sinab ko'ring.
2. No such file or directory: 'main.py'
Bosqich: 6 (fayl o'qish)
Sabab: siz boshqa papkadasiz yoki fayl nomida xato bor.
Yechim: dir (Windows) yoki ls (Linux/Mac) bilan joriy papkani tekshiring. cd bilan to'g'ri papkaga o'ting.
3. Chiqish ko'rinmayapti yoki kech ko'rinadi
Bosqich: 9 (buferlash)
Yechim: print(..., flush=True) yoki python -u main.py (buferlashsiz rejim).
4. O'zbekcha harflar buzilib chiqadi
Bosqich: 2 yoki 9 (kodlash)
Sabab: fayl UTF-8 da emas yoki terminal UTF-8 ni qo'llab-quvvatlamaydi.
Yechim: muharrirda UTF-8 ni tanlang. Windows terminalida chcp 65001 buyrug'i yordam berishi mumkin.
5. Xato xabarini o'qimasdan tuzatishga urinish
Bosqich: har qanday
Yechim: 2.10-jadvalga qarang. Xato turi sizga qaysi bosqichda muammo borligini aytadi.
7. Integratsiya — bu bilim qayerda kerak bo'ladi
- 2-qism (Muhit): PATH, terminal, birinchi dastur — bu darsning amaliyoti
- 3-qism (Asoslar):
print()ning to'liq imkoniyatlari - 7-qism (Funksiyalar): LEGB qoidasi —
LOAD_NAMEqanday ishlaydi - 9-qism (Xatolar): har bosqichdagi xatolarni ushlash
- 12-qism (CPython): AST, bytecode, PVM — bu darsning chuqur davomi
- 15-qism (Standart kutubxona):
sys,os,subprocess - 16-qism (Fayllar): kodlash va buferlash batafsil
8. Eng yaxshi amaliyotlar
Xato ko'rganingizda "bu qaysi bosqich?" deb so'rang. 2.10-jadval — sizning diagnostika vositangiz.
Uzoq ishlaydigan dasturda
flush=Trueishlating. Foydalanuvchi dastur ishlab turganini ko'rishi kerak.Fayllarni doim UTF-8 da saqlang. Muharrirni shunga sozlang va unuting.
printo'rnigaloggingni o'rganing (15-qism). Jiddiy dasturdaprintbilan nosozlik izlash noqulay.sys.executableni tekshirishni biling. "Qaysi Python ishlayapti?" degan savol tez-tez chiqadi, ayniqsa virtual muhit bilan.Zanjirni eslab qoling. U ko'p muammoni tez yechishga yordam beradi.
9. Amaliy topshiriq
Vazifa 1: Zanjirni tiklash
Xotiradan (jadvalga qaramasdan) python main.py yozganingizdan ekranda matn chiqqunicha bo'lgan bosqichlarni yozing. Kamida oltitasini eslashga harakat qiling, keyin 2.9-bo'lim bilan solishtiring.
Vazifa 2: Xatoni bosqichga bog'lash
Quyidagi xatolar zanjirning qaysi bosqichida yuz beradi?
1. 'python' is not recognized as an internal or external command
2. SyntaxError: '(' was never closed
3. NameError: name 'pirnt' is not defined
4. FileNotFoundError: [Errno 2] No such file or directory: 'main.py'
5. IndentationError: unexpected indent
6. UnicodeEncodeError: 'charmap' codec can't encode characterJavoblar
- 4-bosqich — PATH. OT
pythonni topa olmadi - 7-bosqich — kompilyatsiya. AST qurilmadi, dastur umuman ishga tushmadi
- 8-bosqich — bajarilish. PVM
pirntnomini LEGB bo'yicha qidirdi va topmadi - 6-bosqich — fayl o'qish. Python ishga tushdi, lekin faylni topa olmadi
- 7-bosqich — kompilyatsiya. Chekinish sintaksisning bir qismi
- 9-bosqich — chiqish. Terminal belgini ko'rsata olmaydi (kodlash muammosi)
Vazifa 3: Tajriba (2-qismdan keyin)
Python o'rnatgach quyidagilarni sinab ko'ring va natijani yozing:
main.pyyarating, ichigaprint("Salom")yozing, ishga tushiringpython main.py > natija.txtdeb ishga tushiring. Ekranda nima ko'rindi? Faylda nima bor?- 1-misoldagi
sys.stdout.isatty()ni ikkala holatda sinab ko'ring - 3-misoldagi buferlash tajribasini o'tkazing. Sizning tizimingizda farq bormi?
Vazifa 4: O'ylash
print ekranga emas, stdout ga yozishi qanday amaliy foyda beradi? Uchta misol o'ylab toping.
Mumkin bo'lgan javoblar
- Dastur chiqishini faylga saqlash — kodni o'zgartirmasdan:
python main.py > log.txt - Dasturlarni zanjirlash — birining chiqishi ikkinchisiga kirish:
python main.py | grep "xato" - Test qilish — test dasturi
stdoutni ushlab, dastur to'g'ri chiqarganini tekshiradi (17-qism) - Serverda ishlash — terminal yo'q, chiqish jurnal tizimiga yo'naltiriladi
Nimani mustahkamlaydi: butun dars — 1-qismning yakuniy takrori.
Xulosa
Bu darsda print("Salom, dunyo!") ortidagi butun zanjirni ko'rdik.
Eng muhim uch fikr:
Sodda ko'ringan narsa ortida o'nlab bosqich turadi. PATH, jarayon, AST, bytecode, PVM, tizim chaqiruvi — hammasi millisekundlarda.
Har bosqichning o'z xatosi bor. Xato turini bosqichga bog'lash — dasturchining eng foydali diagnostika ko'nikmasi.
printekranga yozmaydi. Ustdoutga yozadi, u esa terminalga, faylga yoki boshqa dasturga ulangan bo'lishi mumkin. Bu Unix falsafasi va u sizga katta moslashuvchanlik beradi.
1-QISM YAKUNLANDI
Siz sakkizta darsni tugatdingiz va endi quyidagilarni bilasiz:
| Dars | Nima o'rgandingiz |
|---|---|
| 1.1 | Kompyuter faqat 0 va 1 bilan ishlaydi; xotira ierarxiyasi |
| 1.2 | Dastur — buyruqlar ketma-ketligi; xatolarning uch turi |
| 1.3 | Tillar nega ko'p; Python dinamik va kuchli turlashga ega |
| 1.4 | AOT, bytecode+VM, JIT, transpiler; Python nega sekin |
| 1.5 | Guido, Zen, PEP; nega bo'sh joy bilan bloklanadi |
| 1.6 | Python qayerda ishlatiladi va qayerda ishlatilmaydi |
| 1.7 | Versiyalar, PyPI, xavfsizlik, kutubxona tanlash |
| 1.8 | Kod bajarilishining to'liq zanjiri |
Hali bitta ham kod yozmadingiz — va bu ataylab shunday. Endi siz kod yozganingizda nima sodir bo'layotganini tushunasiz, ko'r-ko'rona yodlamaysiz.
Keyingi qism: 2-QISM — MUHIT VA VOSITALAR. U yerda Pythonni o'rnatamiz, VS Code ni sozlaymiz va nihoyat birinchi dasturingizni yozasiz.
Izohlar (0)
Izoh yozish uchun kiring.
- Hozircha izoh yo'q. Birinchi bo'ling!