Created
March 6, 2011 14:00
-
-
Save seddi/857304 to your computer and use it in GitHub Desktop.
dosya adını girdigimiz bir dosyadaki (aynı dizinde calıstıgınız dusunuluyor..! ) satırları heceleyerek herbir kelime icin hece listesi olusturur. NOT: dosyadaki her satısın tek kelime olması dusunulmustur ileride degisecektir...
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python3 | |
#-*- coding:utf-8 -*- | |
import sys | |
sesli = ['a', 'e', 'ı', 'i', 'o', 'ö', 'u', 'ü', 'A', 'E', 'I', 'i', 'O', 'Ö', 'U', 'Ü'] | |
sessiz = ['b', 'c', 'ç', 'd', 'f', 'g', 'ğ', 'h', 'j', 'k', 'l', 'm', 'n', 'p', 'r', 's', 'ş', 't', 'v', 'y', 'z', 'B', 'C', 'Ç', 'D', 'F', 'G', 'Ğ', 'H', 'J', 'K', 'L', 'M', 'N', 'P', 'R', 'S', 'Ş', 'T', 'V', 'Y', 'Z' ] | |
def hecebul(kelime): | |
kelime = kelime[::-1] | |
hece_liste = list() | |
while True: | |
state = True | |
for i in kelime: | |
if i in sesli: | |
state = False | |
break | |
if state or not len(kelime): | |
if not hece_liste: | |
return hece_liste.insert(0, kelime) | |
else: | |
hece_liste[0] = (hece_liste[0][::-1] + kelime[::-1])[::-1] | |
return hece_liste | |
c = kelime.find(i) | |
if len(kelime) == c+1 or ((not kelime[c+1] in sessiz) and c+1 < len(kelime)): | |
hece_liste.insert(0, kelime[:c+1][::-1]) | |
kelime = kelime[c+1:] | |
elif kelime[c+1] in sessiz and c+2 <= len(kelime): | |
hece_liste.insert(0, kelime[:c+2][::-1]) | |
kelime = kelime[c+2:] | |
def hecele(liste): | |
heceler = list() | |
for isim in liste: | |
if len(isim): | |
heceler.append(hecebul(isim)) | |
return heceler | |
state = True | |
while state: | |
dosya_adi = input("okunacak dosya adi : ") | |
if dosya_adi: | |
try: | |
file = open(dosya_adi, "r") | |
print ("{0} bulundu...\nOkuma yapılıyor... ".format(dosya_adi)) | |
isimler = list() | |
for kelime in file: | |
isimler.append(kelime.split("\n")[0]) | |
print (hecele(isimler)) | |
state = False | |
except IOError: | |
print ("Dosya yolu bulunamadi veya \"{0}\" adinda bir dosya yok..!" .format(dosya_adi)) | |
sys.exit() | |
else: | |
print ("Dosya adi belirtmediniz!...") | |
state = True |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment