Pythonda matnni kirildan lotinga va lotindan kiril alifbosiga o'tkazuvchi dastur yaratish. Kirish



Download 340,63 Kb.
Pdf ko'rish
Sana10.09.2021
Hajmi340,63 Kb.
#170368
Bog'liq
Python dasturlash tili yordamida lotin-krill dasturi



Pythonda matnni kirildan lotinga va lotindan 

kiril alifbosiga o'tkazuvchi dastur yaratish. 

 

Kirish. 

Idora va ofislarda ishlovchi hodimlar yoki boshqa shunga o'xshash soha egalari kompyuterda matnni kirildan 

lotinga va aksincha o'tkazishiga to'g'ri keladi. Har xil dasturlash tillari yordamida ko'plab kiril-lotin dasturlari 

yaratilgan. Bu maqolada python dasturlash tilida shu dasturni yaratishni o'rganamiz. 

 

 

 



Dastur oynasi. 

Ishni modullarni bog'lash va dastur oynasini yaratishdan boshlaymiz. 

from tkinter import *# tkinter moduuliga bog'laymiz 

from tkinter.filedialog import * 

oyna=Tk() #Oyna yaratib olamiz. 

oyna.title("Kiril-Lot dasturi")#dastur sarlavhasi; 

oyna.geometry("860x400")#oyna o'lchamlari; 

oyna.configure(bg="dodger blue")#fon rangi. 

Dasturda matn yozish va tahrirlash uchun bitta Text vidjetini joylashtirib olamiz. Dastur oynasiga matn joylashtirish 

uchun Label dan foydalanamiz. 

Label(oyna, text="Matnni kirildan lotinga va lotindan kirilga o'tkazishingiz 

mumkin.",bg="dodger blue").place(x=20, y=10)#Label vidjeti; 

scrollbar = Scrollbar(oyna)#Scrollbar vidjeti; 

scrollbar.pack(side=RIGHT, fill=Y) 

matn=Text(oyna, height=20, width=100)#Text vidjetini yaratish. 

matn.place(x=20, y=30) 

matn.config(yscrollcommand=scrollbar.set) 

scrollbar.config(command=matn.yview) 




Text vidjetiga ko'p qatorli matn yozilganda uning maydonga sig'magan qismlarini ko'rish uchun Scrollbar vidjetini 

joylashtirdik. Harflarni saqlash uchun kiril va lot listlarini yaratib olamiz. Bu listlar yordamida matndagi harflar bir-biri 

bilan almashtiriladi. 

Matndagi harflarni almashtirish uchun 2ta funksiya yaratib olamiz. 

#Kirildan lotinga o'tkazish funksiyasi. 

def lotinga(): 

    s=matn.get(1.0,END) 

    for i in range(len(kiril)):#list uzunligiga mos sikl yaratamiz 

        s=s.replace(kiril[i],lot[i])#replace orqali matnni almashtirib chiqaramiz 

    matn.delete(1.0,END)#oldingi matnni o'chirib tashlaymiz 

    matn.insert(END,s)#yangi matnni joylashtiramiz 

#Lotindan kirilga o'tkazish funksiyasi. 

def kirilga(): 

    s=matn.get(1.0,END) 

    for i in range(len(kiril)): 

        s=s.replace(lot[i],kiril[i]) 

    matn.delete(1.0,END) 

    matn.insert(END,s) 

Matnni boshqa alifbo harflariga o'tkazish uchun replace() almashtirish funksiyasidan foydalanamiz. Barcha harflar 

almashishi uchun for sikliga joylashtiriladi. len(kiril)-orqali takrorlanishlar soni harflar soni bo'yicha aniqlanadi. 

Dasturimizga matnni saqlash va fayldan ochish imkoniyatini ham qo'shamiz. 

def ochish():#fayldan ochish funksiyasini yaratamiz 

    fayl=askopenfilename(filetypes=[("Matn fayli","*.txt"),("Barcha 

fayllar","*.*")])#ochish dialog oynasini hosil qilamiz 

    if not fayl: 

        return 

    matn.delete(1.0,END) 

    with open(fayl,"r") as faylga:#fayl o'zgaruvchisi orqali fayllga bog'laymiz 

        mtn=faylga.read()#fayldan matnni o'qish olish 

        matn.insert(END,mtn)#fayldagi ma'lumotni Text vidjetiga yozamiz 

#Matnni xotiraga saqlash. 

def saqlash():#faylga saqlash funksiyasini yaratamiz 

   fayl=asksaveasfilename(defaultextension="txt",filetypes=[("Matn 

fayli","*.txt"),("Barcha fayllar","*.*")],)#saqlash dialog oynasini hosil qilamiz 

    if not fayl: 

        return 

    with open(fayl,"w",encoding="utf-8") as fayldan:#faylni ochamiz 

        mtn=matn.get(1.0,END) 

        fayldan.write(mtn)#faylga ma'lumot yoziladi 

Button vidjeti yordamida 4ta boshqarish tugmalarini joylashtiramiz. 

Button(oyna, text="Fayldan ochish", command=ochish).place(x=40, y=360) 

Button(oyna, text="Faylga saqlash", command=saqlash).place(x=150, y=360) 

Button(oyna, text="Kirildan lotinga o'tkazish", command=lotinga).place(x=290, y=360) 

Button(oyna, text="Lotindan kirilga o'tkazish", command=kirilga).place(x=450, y=360) 

va oyna.mainloop()-dastur oynasini ekranga chiqaramiz. 

Dasturimiz tayyor. Dasturning to'liq kodi: 

from tkinter import *#tkinter modulini bog'lab olamiz 

from tkinter.filedialog import * 

oyna=Tk() #Oyna yaratib olamiz. 

oyna.title("Kiril-Lot dasturi")#Oyna sarlavhasi 

oyna.geometry("860x400")#Oyna o'lchamlari 

oyna.configure(bg="dodger blue")#dastur fon rangi 

Label(oyna, text="Matnni kirildan lotinga va lotindan kirilga o'tkazishingiz 

mumkin.",bg="dodger blue").place(x=20, y=10)#label yordamida oynada matn chiqaramiz 




scrollbar = Scrollbar(oyna)#ko'p qatorli matnni ko'rish uchun scrollbar 

joylashtiramiz 

scrollbar.pack(side=RIGHT, fill=Y) 

matn=Text(oyna, height=20, width=100)#matn kiritish va tahrirlash maydoni hosil 

qilamiz 

matn.place(x=20, y=30)#matn maydoni kordinatalari 

matn.config(yscrollcommand=scrollbar.set) 

scrollbar.config(command=matn.yview) 

#Kiril harflar listini yaratib olamiz. 

kiril=["ю","Ю","я","Я","ё","Ё","ш","Ш","ч","Ч","ў","Ў", 

"қ","Қ","ғ","Ғ","ц","Ц","й","Й","у","У","к","К", 

"е","Е","н","Н","г","Г","щ","Щ","з","З","х","Х", 

"э","Э","ж","Ж","д","Д","л","Л","о","О","р","Р", 

"п","П","а","А","в","В","ф","Ф","с","С","м","М", 

"и","И","т","Т","б","Б","қ","Қ","ҳ","Ҳ","ғ","Ғ","ь"] 

#Lotin harflar listini yaratib olamiz.  

lot=["yu","Yu","ya","Ya","yo","Yo","sh","Sh","ch","Ch","o'","O'", 

"q","Q","g'","G'","ts","Ts","y","Y","u","U","k","K","e","E", 

"n","N","g","G","sh","Sh","z","Z","x","X","e","E","j","J", 

"d","D","l","L","o","O","r","R","p","P","a","A","v","V","f", 

"F","s","S","m","M","i","I","t","T","b","B","q","Q","h","H", 

"g'","G'","`"] 

#Kirildan lotinga o'tkazish funksiyasi. 

def lotinga(): 

    s=matn.get(1.0,END) 

    for i in range(len(kiril)):#list uzunligiga mos sikl yaratamiz 

        s=s.replace(kiril[i],lot[i])#replace orqali matnni almashtirib chiqaramiz 

    matn.delete(1.0,END)#oldingi matnni o'chirib tashlaymiz 

    matn.insert(END,s)#yangi matnni joylashtiramiz 

#Lotindan kirilga o'tkazish funksiyasi. 

def kirilga(): 

    s=matn.get(1.0,END) 

    for i in range(len(kiril)): 

        s=s.replace(lot[i],kiril[i]) 

    matn.delete(1.0,END) 

    matn.insert(END,s) 

#Xotiradan matn faylini ochish. 

def ochish():#fayldan ochish funksiyasini yaratamiz 

    fayl=askopenfilename(filetypes=[("Matn fayli","*.txt"),("Barcha 

fayllar","*.*")])#ochish dialog oynasini hosil qilamiz 

    if not fayl: 

        return 

    matn.delete(1.0,END) 

    with open(fayl,"r") as faylga:#fayl o'zgaruvchisi orqali fayllga bog'laymiz 

        mtn=faylga.read()#fayldan matnni o'qish olish 

        matn.insert(END,mtn)#fayldagi ma'lumotni Text vidjetiga yozamiz 

#Matnni xotiraga saqlash. 

def saqlash():#faylga saqlash funksiyasini yaratamiz 

   fayl=asksaveasfilename(defaultextension="txt",filetypes=[("Matn 

fayli","*.txt"),("Barcha fayllar","*.*")],)#saqlash dialog oynasini hosil qilamiz 

    if not fayl: 

        return 

    with open(fayl,"w",encoding="utf-8") as fayldan:#faylni ochamiz 

        mtn=matn.get(1.0,END) 

        fayldan.write(mtn)#faylga ma'lumot yoziladi 

#Boshqarish uchun tugmalar joylashtiramiz. 

Button(oyna, text="Fayldan ochish", command=ochish).place(x=40, y=360)#ochish 

tugmasi place-kordinatalari 

Button(oyna, text="Faylga saqlash", command=saqlash).place(x=150, y=360) 

Button(oyna, text="Kirildan lotinga o'tkazish", command=lotinga).place(x=290, y=360) 

Button(oyna, text="Lotindan kirilga o'tkazish", command=kirilga).place(x=450, y=360) 

oyna.mainloop()#yaratgan forma oynamiz namoish etiladi 




Bu dastur python o'rnatilgan kompyuterlarda ishlaydi. Foydalanish qulay bo'lishi uchun alohida .exe ilova 

ko'rinishiga o'tkazib olamiz. Buning uchun pyinstaller kutubxonasi kerak bo'ladi. Bu kutubxonani o'rnatish uchun 

buyruqlar satriga 

pip install pyinstaller buyrug'ini kiritamiz. 

pyinstaller kutubxonasi bir marta o'rnatiladi va to'liq o'rnatilgandan so'ng undan bemalol foydalanishingiz mumkin. 

Pythonda yaratgan dasturimizni bitta exe fayliga o'tkazamiz. Dastur kodlari saqlangan papkani buyruqlar satrida 

ochib olamiz. 



pyinstaller --onefile -w 

KirilLot.py

 buyrug'ini kiritamiz. Bajarilayotgan amallar 

ro'yxatini ko'rsatadi. 

 

 



dist papkasida dastur fayli hosil bo'ladi. Bu fayldan boshqa python o'rnatilmagan kompyuterlarga o'tkazib 

foydalanish mumkin. 

  

 

 



Xulosa. 

Python dasturlash tilida Kiril-Lotin tarjimon dasturini yaratishni ko'rib chiqdik. Bu dasturdan foydalanishingiz 

mumkin. Dasturga qo'shimcha imkoniyatlar qo'shib rivojlantirsangiz ham bo'ladi. 

 

Maqola muallifi: Azamat Badalov 



 

 

Download 340,63 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish