Konuyu Oyla:
  • Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
txt okutma sorunu ! büyük txt okutma sorunu
#1
bir projem var , projede bir txt dosyasını açtırıp içindeki kelimeleri  hedef siteden çektiğim veriler ile karşılaştırıyorum sorun şu

txt de 10-20 kelime olunca kod sorunsuz çalışıyor fakat 1700-2000 kelime olunca kod hata veriyor

bu sorunu nasıl çözerim önerdiğiniz bir yöntem kütüphane varmıdır şimdiden teşekkürler
Ara
Cevapla
#2
txt dosyanız çok büyük olduğu zaman her seferinde tüm içeriği tek seferde okutup kapatmak bellekte yer tutacağı için çok da tercih edilen bir yöntem değildir aslında. Fakat yine de bir txt dosyası ile çalışmak mecburi ise read() veya readlines() gibi tüm içeriği toptan okutmak gerine satır satır okutmak daha uygun olacaktır.

for line in open("dosya.txt"):

   print(line)


yukarıdaki örnekte her döngüde bir sonraki satır okutulacağı için her seferinde bellekte sadece tek satır yer tutacaktır. Bu okutmama gibi bir sorunun ortadan kalmasının yanında koda performans katacaktır.


Ama benim tavsiyem büyük verilerle çalışırken en verimli yöntem veritabanı ile çalışmaktır. Python sqlite3 kütüphanesi ile kelimelerinizi veritabanında tablolara kaydedip tek bir sorgu ile veritabanından hızlıca arama yapıp sonuca göre işlem yapabilirsiniz.

Sqlite kullanım için örnek Türkçe kaynak: https://python-istihza.yazbel.com/standart_moduller/sqlite.html
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
#3
list = ["kelime1", "kelime2, "kelime3] şeklinde 2000-3000 kelimeyi kodun içine gömsem nasıl bir sonuç alırım sizce
Ara
Cevapla
#4
Ya tabi olmasına olur ama kodun oluşturuğu bellek büyür, optimizasyon açısından txt okutmak bile tercih edilmiyorken böylesi kodlamada terör estirmek olur heralde Smile

ayrıca tüm kelimeleri sıra sıra değil de illa da tek seferde koda yükletmek istiyosanız "rb" kipi ile okutmayı deneyin

dosya = open("kelimeler.txt", "rb")

content = dosya.read()

ama read binary ile okuttuğumuz için tekrar içeriği decode() etmeniz gerekecektir

content = dosya.read().decode()
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla

{lang: 'en'}


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  15gb .myd uzantılı dosya python ile okutma perry 1 762 27-11-2022, Saat: 17:59
Son Yorum: perry
  YENİ Python Pyqt5 memory leak sorunu perry 3 832 28-09-2022, Saat: 11:33
Son Yorum: gecemor
  Pyinstaller exe virüs sorunu ahgonlum 4 2,122 16-09-2022, Saat: 17:36
Son Yorum: ahgonlum
  beautifulsoup aynı isimli class sorunu CaglarDevv 4 752 17-06-2022, Saat: 15:48
Son Yorum: CaglarDevv
  python proxy , requests sorunu $cr!pt HUB 3 846 23-04-2022, Saat: 19:18
Son Yorum: gecemor

Hızlı Menü:


Konuyu Okuyanlar: 1 Ziyaretçi
Change Theme