MUHAMMAD AL-XORAZIMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI
UNIVERSITETI SAMARQAND FILIALI
KOMPYUTER INJINIRINGI FAKULTETI
«
KAMPYUTER INGENERING
»
kafedrasi
“
DASTURLASH 2
”
fanidan
2-Mustaqil ish
Bajardi:
DI-
23-13 guruh
Talabasi Toshnazarov Quvonch
Qabul qildi:
Naxalov Z.
Samarqand 2024
MUNDARIJA
1.Kirish.
2.PYTHON dasturlash tilining rivojlanish tarixi.
3.TKINTERGA kirish.
4.Ko
’
p maqsadli konvetorlar haqida.
Python dasturlash tili o
’
zining qulayligi va oson sintaksisi bilan boshqa dasturlash
Tillaridan ajralib turadi shu sababli hozirgi kunda bu dasturlash tilidan
foydalanuvchilarning soni ortib bormoqda. Python dasturlash tilini yaratilishi 1980-
yil oxiri 1990-yil boshlaridan boshlangan.O`sha paytlarda uncha taniqli bo`lmagan
Gollandiyaning CWI institute xodimi Gvido van Rossum ABC tilini yaratilish
proektida ishtirok etgan edi. ABC tili Basic tili o`rniga talabalarga asosiy dasturlash
konsepsiyalarini o`rgatish uchun mo`ljallangan til edi. Bir kun Gvido bu ishlardan
charchadi va 2 hafta davomida o`zining Macintoshida boshqa oddiy tilning
interpretatorini yozdi, bunda u albatta ABC tilining ba’zi bir g`oyalarini o`zlashtirdi.
Shuningdek, Python 1980- 1990-yillarda keng foydalanilgan Algol-68, C, C++,
Modul3 ABC, SmallTalkmtillarining ko`plab xususiyatlarini o`ziga olgandi. Gvido van
Rossum bu tilni internet orqali tarqata boshladi. Bu paytda o`zining “Dasturlash
tillarining qiyosiy taqrizi” veb sahifasi bilan internetda to 1996
-yilgacha Stiv
Mayevskiy ismli kishi taniqli edi. U ham Macintoshni yoqtirardi va bu narsa uni
Gvido bilan yaqinlashtirdi. O`sha paytlarda Gvido BBC ning “Monti Paytonning havo
sirki” komediyasining muxlisi edi va o`zi yaratgan tilni Monti Payton nomiga Python
deb atadi (ilon nomiga emas). Til tezda ommalashdi. Bu dasturlash tiliga qiziqqan
va tushunadigan foydalanuvchilar soni ko`paydi. Boshida bu juda oddiy til edi.
Shunchaki kichik interpretator bir nechta funksiyalarga ega edi. 1991-yil birinchi
OYD(Obyektga Yo`naltirilgan Dasturlash) vositalari paydo bo`ldi. Bir qancha vaqt
o`tib Gvido Gollandiyadan Amerikaga ko`chib o`tdi. Uni CNRI korparatsiyasiga
ishlashga taklif etishdi. U o`sha yerda ishladi va korparatsiya shug`ullanayotgan
proektlarni Python tilida yozdi va bo`sh ish vaqtlarida tilni interpretatorini
rivojlantirib bordi. Bu 1990-yil Python 1.5.2 versiyasi paydo bo`lguncha davom etdi.
Gvidoning asosiy vaqti korparatsiyani proektlarini yaratishga ketardi bu esa unga
yoqmasdi. Chunki uning Python dasturlash tilini rivojlantirishga vaqti
qolmayotgandi. Shunda u o`ziga tilni rivojlantirishga imkoniyat yaratib bera
oladigan homiy izladi va uni o`sha paytlarda endi tashkil etilgan BeOpen firmasi
qo`llab quvvatladi. U CNRI dan ketdi, lekin shartnomaga binoan u Python 1.6
versiyasini chiqarib berishga majbur edi. BeOpen da esa u Python 2.0 versiyani
chiqardi. 2.0 versiyasi bu oldinga qo`yilgan kata qadamlardan edi. Bu versiyada eng
asosiysi til va interpretatorni rivojlanish jarayoni ochiq ravishda bo`ldi.
Tkinter - bu GUI ilovalarini yaratish uchun ishlatiladigan o'rnatilgan python moduli.
Bu Python-da GUI ilovalarini yaratish uchun eng ko'p ishlatiladigan modullardan
biridir, chunki u bilan ishlash oddiy va oson. Tkinter modulini alohida o'rnatish
haqida tashvishlanishingiz shart emas, chunki u allaqachon Python bilan birga
keladi. Python GUI (Grafik foydalanuvchi interfeysi) ni ishlab chiqish uchun bir
nechta variantni taklif etadi. Barcha GUI usullaridan tkinter eng ko'p qo'llaniladigan
usuldir. Bu Python bilan yuborilgan Tk GUI asboblar to'plamiga standart Python
interfeysi. Python tkinter GUI ilovalarini yaratishning eng tez va eng oson usuli
hisoblanadi. Tkinter yordamida grafik interfeys yaratish oson ish.
Grafik foydalanuvchi interfeysi (GUI) foydalanuvchi interfeysi shakli boʻlib, u
foydalanuvchilarga piktogrammalar, menyular, oynalar va boshqalar kabi
elementlardan foydalangan holda vizual koʻrsatkichlar orqali kompyuterlar bilan
oʻzaro aloqada boʻlish imkonini beradi. U foydalanuvchilar kompyuterlar bilan
oʻzaro aloqada boʻlgan buyruq qatori interfeysiga (CLI) nisb
atan afzalliklarga ega.
faqat klaviatura yordamida buyruqlar yozish orqali va ulardan foydalanish GUIga
qaraganda qiyinroq.
Ko'plab maqsadli birlik konvertori yoki metrik konvertor - turli o'lchov birliklarini
bir-biriga o'zgartirish uchun ishlatiladigan vosita. Bu matematik hisob-kitoblarni
osonlashtiradi va o'lchovlarni bir tizimdan boshqasiga o'zgartirishga yordam beradi.
Misol uchun, uzunlik, og'irlik, hajm, vaqt, harorat va boshqa ko'plab o'lchov
birliklari bo'yicha konversiya amalga oshiriladi.
Ko'plab maqsadli birlik konvertorlari har qanday sohada ishlatilishi mumkin,
chunki ular turli o'lchov tizimlari o'rtasida konversiya qilish imkoniyatini beradi
import tkinter as tk
def convert_length():
value = float(entry_value.get())
input_unit = input_unit_var.get()
output_unit = output_unit_var.get()
conversion_factors = {'mm': 1,'cm': 10,'m': 1000,'km': 1000000,'in': 25.4,'ft':
304.8,'yd': 914.4,'mi': 1609344}
value_in_mm = value * conversion_factors[input_unit]
converted_value = value_in_mm / conversion_factors[output_unit]
result_label.config(text=f'{value} {input_unit} = {converted_value:.2f}
{output_unit}')
root = tk.Tk()
root.title('Length Converter')
tk.Label(root, text='Value:').grid(row=0, column=0, padx=5, pady=5)
entry_value = tk.Entry(root)
entry_value.grid(row=0, column=1, padx=5, pady=5)
tk.Label(root, text='From:').grid(row=1, column=0, padx=5, pady=5,)
input_unit_var = tk.StringVar(root)
input_unit_var.set('m')
input_unit_menu = tk.OptionMenu(root, input_unit_var, 'mm', 'cm', 'm', 'km', 'in',
'ft', 'yd', 'mi')
input_unit_menu.grid(row=1, column=1, padx=5, pady=5)
tk.Label(root, text='To:').grid(row=2, column=0, padx=5, pady=5)
output_unit_var = tk.StringVar(root)
output_unit_var.set('ft')
output_unit_menu = tk.OptionMenu(root, output_unit_var, 'mm', 'cm', 'm', 'km',
'in', 'ft', 'yd', 'mi')
output_unit_menu.grid(row=2, column=1, padx=5, pady=5)
convert_button = tk.Button(root, text='Convert', command=convert_length)
convert_button.grid(row=3, column=0, columnspan=2, pady=10)
result_label = tk.Label(root, text='')
result_label.grid(row=4, column=0, columnspan=2, pady=5)
root.mainloop()
• Satr oxiri instruksiyaning oxiri hisoblanadi (nuqta vergul shart emas)
• Har bir qator boshidagi bo`sh joy(отступ) muhim ahamiyatga ega. Kiritilgan
amallar bo`sh joylarning kattaligiga qarab bloklarga birlashadi. Bo`sh joy
istalgancha bo`lishi mumkin asosiysi bitta kiritilgan blok chegarasida bo`sh joy bir
xil bo`lishi kerak. Noto`g`ri qo`yilgan bo`sh joylar xatolik yuz berishiga olib kelishi
mumkin. Bitta probel bilan bo`sh joy hosil qilish yaxshi qaror emas uni o`rniga
to`rtta probel yoki Tab belgisini ishlatish kerak.
• Pythonga kiritilgan amallar bir xil shablonda yoziladi. Bunda asosiy amal ikki nuqta
bilan tugatiladi va uning orqasidan kiritilgan blok kodi ham joylashadi. Odatda,
asosiy amalning ostidagi satr bo`sh joy bilan ajratiladi.
def
–
funksiyani aniqlash.
del
–
obyektni yo`qotish.
elif
–
aks holda, agar.
else
–
for/else yoki if/elsega qarang.
for
–
for tsikli.
if - agar.
import
–
moduldan import.
is
–
xotirani bitta joyida 2 ta obyektni jo`natsa bo`ladimi.
lambda
–
yashirin funksiyani aniqlash.
not
–
mantiqiy inkor amali.
or
–
mantiqiy Yoki amali.
while
–
while tsikli.
Ko'plab maqsadli birlik konvertori yoki metrik konvertor - turli o'lchov birliklarini
bir-biriga o'zgartirish uchun ishlatiladigan vosita. Bu matematik hisob-kitoblarni
osonlashtiradi va o'lchovlarni bir tizimdan boshqasiga o'zgartirishga yordam beradi.
Misol uchun, uzunlik, og'irlik, hajm, vaqt, harorat va boshqa ko'plab o'lchov
birliklari bo'yicha konversiya amalga oshiriladi.
|