Python ile Bir Metni Kelimelerine Ayırmak

by trustix


Eklenme Tarihi : 26 Aralık 2020 23:35 Views:     802



Python'da dosyalarla birçok işlem yapabiliriz. Bunlardan biri de metin dosyalarında yapılan işlemlerdir. Burada bir metin dosyasındaki metni nasıl kelimelerine ayırabiliriz ve bu metindeki kelimeler hakkında nasıl bilgi alabiliriz buna değineceğiz.

Başlamadan önce python kodlarını yazacağınız python dosyası ile aynı dizinde bir metin dosyası oluşturup üzerinde çalışacağınız metni burada bulundurmak iyi olacaktır. Metin dosyası ile aynı dizinde çalışırsanız dosya yolu hataları ile karşılaşma ihtimaliniz azalır.

Başlayalım.

1. Adım - Class oluşturma ve __init__fonksiyonu tanımlama

# Python ile dosya işlemleri
# Bir metni parçaları ayırmak.

'''
    Öncelikle bütün işlemleri rahat
    yapabilmek için bir sınıf yapısı
    kurmamız gerekiyor. Sınıf yapısı içerisinde
    standart olarak __init__ fonksiyonunu
    da yazalım

'''


class MetinDosyasi():
    def __init__(self):
        pass

 

2. Adım - Dosyayı açmak ve okumak

# Python ile dosya işlemleri
# Bir metni parçaları ayırmak.

'''
    1.ADIM
    Öncelikle bütün işlemleri rahat
    yapabilmek için bir sınıf yapısı
    kurmamız gerekiyor. Sınıf yapısı içerisinde
    standart olarak __init__ fonksiyonunu
    da yazalım

'''


class MetinDosyasi():
    def __init__(self):
        '''
            2.ADIM
            Daha sonra metin dosyamızı açmak için
            ve dosya içeriğini okuyabilmek için open
            fonksiyonunu kullanıyoruz. 
            Open fonksiyonuna r parametresini dosyayı
            okuyabilmek için veriyoruz.
            metin.txt ise okumaz istediğimiz dosyanın adı elbette.
        '''
        with open('metin.txt', 'r', encoding='utf-8') as file:
            dosya_icerigi = file.read()


 

3.Adım - Metni kelimelere ayırmak

class MetinDosyasi():
    def __init__(self):
        '''
            2.ADIM
            Daha sonra metin dosyamızı açmak için
            ve dosya içeriğini okuyabilmek için open
            fonksiyonunu kullanıyoruz. 
            Open fonksiyonuna r parametresini dosyayı
            okuyabilmek için veriyoruz.
            metin.txt ise okumaz istediğimiz dosyanın adı elbette.
        '''
        with open('metin.txt', 'r', encoding='utf-8') as file:
            dosya_icerigi = file.read()

            '''
                3.ADIM
                Metin dosyasında tüm metni
                split ile kelimelere ayırıyoruz.
                Ayrıca daha sonra bu kelimeleri
                birer eleman olarak tutabileceğimiz
                bir boş liste yapısı oluşturuyoruz.

            '''

            kelimeler = dosya_icerigi.split()
            self.kelime = list()

 

4.Adım - Kelimeleri temizleme

 


            '''
                4.ADIM
                for döngüsü yardımı ile
                bütün kelimelerin üzerinde 
                geziniyoruz. Bu kelimelerin
                önlerinde arkalarında bulunan
                boşlukları, nokta işaretlerini,
                virgülleri ve buna benzer şeyleri
                temizliyoruz.
                
            '''

            for i in kelimeler:
                i = i.strip(' ')
                i = i.strip('.')                
                i = i.strip('\n')
                i = i.strip(',')

                '''
                    Temizleme işlemi bitince daha
                    önce kelime adında tanımladığımız
                    listeye append metodu ile ekliyoruz.
                    Şu anda elimizde metin dosyasındaki 
                    bütün kelimelerden oluşan bir liste yapısı 
                    olmuş oldu.
                '''
                self.kelime.append(i)

 

 

5. ve son Adım ile birlikte tüm kodları birlikte verelim.

# Python ile dosya işlemleri
# Bir metni parçaları ayırmak.

'''
    1.ADIM
    Öncelikle bütün işlemleri rahat
    yapabilmek için bir sınıf yapısı
    kurmamız gerekiyor. Sınıf yapısı içerisinde
    standart olarak __init__ fonksiyonunu
    da yazalım

'''


class MetinDosyasi():
    def __init__(self):
        '''
            2.ADIM
            Daha sonra metin dosyamızı açmak için
            ve dosya içeriğini okuyabilmek için open
            fonksiyonunu kullanıyoruz. 
            Open fonksiyonuna r parametresini dosyayı
            okuyabilmek için veriyoruz.
            metin.txt ise okumaz istediğimiz dosyanın adı elbette.
        '''
        with open('metin.txt', 'r', encoding='utf-8') as file:
            dosya_icerigi = file.read()

            '''
                3.ADIM
                Metin dosyasında tüm metni
                split ile kelimelere ayırıyoruz.
                Ayrıca daha sonra bu kelimeleri
                birer eleman olarak tutabileceğimiz
                bir boş liste yapısı oluşturuyoruz.

            '''

            kelimeler = dosya_icerigi.split()
            self.kelime = list()


            '''
                4.ADIM
                for döngüsü yardımı ile
                bütün kelimelerin üzerinde 
                geziniyoruz. Bu kelimelerin
                önlerinde arkalarında bulunan
                boşlukları, nokta işaretlerini,
                virgülleri ve buna benzer şeyleri
                temizliyoruz.
                
            '''

            for i in kelimeler:
                i = i.strip(' ')
                i = i.strip('.')                
                i = i.strip('\n')
                i = i.strip(',')

                '''
                    Temizleme işlemi bitince daha
                    önce kelime adında tanımladığımız
                    listeye append metodu ile ekliyoruz.
                    Şu anda elimizde metin dosyasındaki 
                    bütün kelimelerden oluşan bir liste yapısı 
                    olmuş oldu.
                '''
                self.kelime.append(i)

    '''
        5.ADIM
        Metindeki bütün kelimeleri ayrı ayrı
        çıktılamak için bir fonksiyon oluşturuyoruz.
        Bir boş küme oluşturuyoruz. Daha önce oluşturduğumuz
        kelime listesindeki kelimeleri
        bu kümeye ekliyoruz.
        En Nihayetinde Buradan kelimelerimizi
        Ekrana yazdırıyoruz.
    '''
    def kelimeler(self):

        kume  = set()
        for i in self.kelime:
            kume.add(i)

        print('Metindeki Kelimeler')
        print('--------------------')
        for i in kume:
            print(i)
            print('--------------------')


dosya = MetinDosyasi()
print(dosya.kelimeler())

 

 

Yukarıdaki kodları kendi python dosyanızda çalıştırırsanız karşınıza metin dosyanızdaki bütün kelimelerin virgül ve nokta işaretleri olmadan konsol ekranında çıktılandığını göreceksinizdir.

Çıktının az bir bölümünü de paylaşalım bu şekilde kodların nasıl bir sonuç ürettiğini görmüş oluruz.

'''
Metindeki Kelimeler
--------------------
aşamasında
--------------------
ve
--------------------
daha
--------------------
paketi
--------------------
dağıttığı
--------------------
okunurluğu
--------------------
artırmasıdır
--------------------
'''

 





0

Yorum Formu

vikikod.com    © 2019