Fayllar, papkalar va kengaytmalar
Dastur — bu fayl. Sayt — bu fayllar to'plami. Shuning uchun dasturchi fayllar bilan ishlashni yaxshi bilishi kerak: ularni qanday nomlash, papkalarga qanday joylash va bir fayldan boshqasiga qanday «yo'l» ko'rsatish. Bu oddiy ko'rinadi, lekin yangi boshlovchilarning ko'p muammolari aynan shu yerdan chiqadi.
Bu darsda
- Fayl, papka va fayl kengaytmasi nima
- Windows va macOS'da kengaytmalarni ko'rinadigan qilish
- Loyiha papkasini to'g'ri tuzish va fayllarni nomlash
- Absolyut va nisbiy yo'llar
- Nega kodni Word'da yozib bo'lmaydi
Fayl va papka
Fayl — diskda saqlangan, nomga ega ma'lumot: matn, rasm, qo'shiq yoki dastur. Papka (jild, inglizcha folder yoki directory) — fayllar va boshqa papkalarni saqlaydigan «quti».
Kompyuter diski — katta kutubxona. Papkalar — javonlar va bo'limlar, fayllar — kitoblar. Kitobni topish uchun uning qaysi bo'lim, qaysi javonda turganini bilishingiz kerak. Kompyuterda bu «manzil» yo'l (inglizcha path) deb ataladi.
Fayl kengaytmasi
Fayl nomi odatda ikki qismdan iborat: nomi va nuqtadan keyingi kengaytmasi. Masalan, salom.py da salom — nomi, .py — kengaytmasi. Kengaytma kompyuterga fayl turini va uni qaysi dastur bilan ochish kerakligini aytadi.
| Kengaytma | Fayl turi | Odatda nima bilan ochiladi |
|---|---|---|
.txt | Oddiy matn | Bloknot, VS Code |
.docx, .pdf | Hujjat | Word, PDF o'quvchi |
.jpg, .png, .svg | Rasm | Rasm ko'ruvchi, brauzer |
.mp3, .mp4 | Audio, video | Pleyer |
.zip | Arxiv (siqilgan fayllar) | Arxivator |
.exe | Windows dasturi | Ishga tushadi! |
.py | Python kodi | VS Code, Python |
.html | Veb-sahifa | Brauzer, VS Code |
.css | Sahifa uslublari | VS Code |
.js | JavaScript kodi | VS Code, brauzer |
.json | Ma'lumotlar (matn ko'rinishida) | VS Code |
Kengaytmalarni ko'rinadigan qiling
Windows standart holatda kengaytmalarni yashiradi: siz salom.py o'rniga faqat salom ni ko'rasiz. Dasturchi uchun bu noqulay va hatto xavfli. Kengaytmalarni yoqing:
- 1Istalgan papkani oching va yuqoridagi View («Ko'rinish») tugmasini bosing, so'ng Show («Ko'rsatish») bandiga o'ting.
- 2File name extensions («Fayl nomi kengaytmalari») ni belgilang. Endi barcha fayllar to'liq nomi bilan ko'rinadi.
- Windows 10'da: papka oynasining yuqorisidagi View yorlig'ini oching va File name extensions katagiga belgi qo'ying.
- macOS'da: Finder → Settings (Sozlamalar) → Advanced → Show all filename extensions.
Nega bu xavfsizlik uchun muhim? Firibgarlar ko'pincha virusni rasm.jpg.exe deb nomlashadi. Kengaytmalar yashirin bo'lsa, siz faqat rasm.jpg ni ko'rasiz va uni oddiy rasm deb ochasiz — aslida esa dastur ishga tushadi. Kengaytmalar ko'rinib tursa, bunday aldovni darhol sezasiz.
Loyiha papkasi
Har bir loyiha uchun alohida papka oching va unga tegishli barcha fayllarni shu papka ichida saqlang. Barcha mashqlaringiz uchun umumiy papka ochib, uning ichida har bir mavzu yoki loyiha uchun alohida papka yaratish qulay:
dasturlash/
├── python/
│ ├── salom.py
│ ├── kalkulyator.py
│ └── oyin.py
└── veb/
└── mening-saytim/
├── index.html
├── style.css
├── script.js
└── rasmlar/
├── logo.png
└── surat.jpg
Bu ko'rinish papkalar daraxti deyiladi. Chiziqlar qaysi fayl qaysi papka ichida ekanini ko'rsatadi. VS Code'ning Explorer bo'limi ham loyihani xuddi shunday daraxt ko'rinishida ko'rsatadi.
Fayllarni to'g'ri nomlash
Kompyuter uchun nomdagi har bir belgi muhim. Ayniqsa, veb-saytlarda noto'g'ri nom rasm yoki sahifa ochilmasligiga olib keladi. Oltin qoidalar:
- Faqat lotin harflari, raqamlar, chiziqcha
-va pastki chiziq_ishlating. - Bo'sh joy qo'ymang. So'zlarni
-yoki_bilan ajrating. - Kichik harflar bilan yozing. Linux serverlarda
Rasm.jpgvarasm.jpg— ikki xil fayl! - Apostrof va maxsus belgilarni (
' " ? ! # % &) ishlatmang. «O'» va «g'» ni apostrofsiz yozing. - Ma'noli nom bering:
kalkulyator.py— yaxshi,yangi1.py— yomon.
| Yomon | Yaxshi | Sabab |
|---|---|---|
Mening Saytim.html | mening-saytim.html | Bo'sh joy va katta harf |
o'yin.py | oyin.py | Apostrof |
rasm (1).JPG | rasm-1.jpg | Qavs, bo'sh joy, katta harfli kengaytma |
yangi.py, yangi2.py | baho-hisoblash.py | Nomdan nima ekani tushunarsiz |
random.py | tasodifiy-son.py | Python'ning o'z moduli bilan bir xil nom chalkashlikka olib keladi |
Yo'llar: faylning manzili
Yo'l — faylning diskdagi to'liq manzili. Ikki xil yo'l bor.
Absolyut yo'l
Diskning eng boshidan boshlanadigan to'liq manzil:
Windows: C:\Users\Aziz\Documents\dasturlash\python\salom.py macOS/Linux: /Users/aziz/dasturlash/python/salom.py
E'tibor bering: Windows papkalarni teskari chiziq \ bilan, macOS va Linux esa to'g'ri chiziq / bilan ajratadi. Veb-saytlarda doim / ishlatiladi.
Nisbiy yo'l
Joriy fayl turgan joydan boshlab hisoblanadigan manzil. Veb-dasturlashda u juda ko'p ishlatiladi: masalan, index.html sahifasi o'z yonidagi rasmlarni nisbiy yo'l bilan ko'rsatadi. Yuqoridagi daraxtga qarab:
| Qayerdan | Qayerga | Nisbiy yo'l |
|---|---|---|
index.html | style.css (xuddi shu papkada) | style.css |
index.html | logo.png (ichki papkada) | rasmlar/logo.png |
rasmlar/ ichidagi fayl | index.html (bir pog'ona yuqorida) | ../index.html |
Ikki nuqta .. — «bir papka yuqoriga chiq» degani. Bitta nuqta . esa «joriy papka».
Nisbiy yo'llar loyihani ko'chirishga imkon beradi: papkani boshqa kompyuterga yoki internetga ko'chirsangiz ham, fayllar orasidagi bog'lanish buzilmaydi. Absolyut yo'l (C:\Users\Aziz\...) esa faqat sizning kompyuteringizda ishlaydi.
Kod — oddiy matn
Dastur kodi — bezaksiz, oddiy matn. Uni Word'da yozib bo'lmaydi: Word matnga ko'rinmas formatlash ma'lumotlarini (shrift, rang, o'lcham) qo'shib qo'yadi, oddiy qo'shtirnoqlarni esa chiroyli «egri» qo'shtirnoqlarga almashtiradi. Natijada kompyuter kodni tushunmaydi. Kod uchun maxsus dasturlar — kod muharrirlari kerak. Ular haqida keyingi darsda gaplashamiz.
Yana bir muhim narsa — kodlash (inglizcha encoding): matndagi harflar qanday raqamlar bilan saqlanishi. O'zbekcha harflar va boshqa barcha yozuvlar to'g'ri ko'rinishi uchun fayllar UTF-8 kodlashda saqlanishi kerak. VS Code buni o'zi qiladi — holat satrida UTF-8 yozuvini ko'rasiz.
Mashq
Amaliy topshiriq O'z papkangizni yarating
- Kompyuteringizda fayl kengaytmalarini ko'rinadigan qiling.
- «Hujjatlar» (Documents) ichida
dasturlashpapkasini, uning ichida esapythonvavebpapkalarini yarating. dasturlashpapkasining absolyut yo'lini toping. Windows'da papka oynasining manzil satrini bosing — u yo'lni ko'rsatadi.
Savol Nisbiy yo'lni toping
Loyiha tuzilishi shunday:
sayt/
├── index.html
├── sahifalar/
│ └── haqida.html
└── rasmlar/
└── men.jpg
haqida.html sahifasidan men.jpg rasmiga nisbiy yo'l qanday yoziladi?
Javobni ko'rish
../rasmlar/men.jpg — avval .. bilan sahifalar papkasidan chiqamiz (sayt ga), keyin rasmlar papkasiga kirib, men.jpg ni olamiz.
O'zingizni sinang
kalkulyator.py faylining kengaytmasi qaysi?
kalkulyatorkalkulyator.py.py- Kengaytmasi yo'q
To'g'ri. Kengaytma — nomdagi oxirgi nuqtadan keyingi qism.
Qaysi fayl nomi eng to'g'ri?
Mening O'yinim.pymening-oyinim.pymening oyinim!.pyMENING_OYINIM.PY
To'g'ri: kichik lotin harflari, bo'sh joy va apostrofsiz.
Nisbiy yo'lda .. nimani bildiradi?
- Joriy papkani
- Diskning boshini
- Hamma fayllarni
- Bir papka yuqoriga chiqishni
To'g'ri. Bitta nuqta . esa joriy papkani bildiradi.
Nega kodni Microsoft Word'da yozib bo'lmaydi?
- Word matnga formatlash ma'lumotlarini qo'shadi va qo'shtirnoqlarni o'zgartiradi
- Word'da lotin harflari yo'q
- Word juda qimmat
- Word'da qatorlar raqamlanmaydi, boshqa farqi yo'q
To'g'ri. Kod oddiy matn bo'lishi kerak.
Xulosa
- Fayl nomi = nom + kengaytma. Kengaytma fayl turini bildiradi:
.py,.html,.css,.js. - Kengaytmalarni doim ko'rinadigan qilib qo'ying — bu ham qulay, ham xavfsiz.
- Har bir loyiha uchun alohida papka; nomlar — kichik lotin harflarida, bo'sh joy va apostrofsiz.
- Absolyut yo'l diskning boshidan, nisbiy yo'l joriy fayldan boshlanadi;
..— bir pog'ona yuqoriga. - Kod — oddiy matn: uni kod muharririda, UTF-8 kodlashda yozing.