hızını artırma Ben dizeleri listesini içeren bir giriş dosyası var.bir piton komut
ikinci hatta başlayarak her dördüncü hat üzerinden yineleme ediyorum. bu satırların her birinde itibaren
ben ilk ve son 6 karakter yeni bir dize yapmak ve bu yeni dize tektir yalnızca bir çıkış dosyasında bu koyun.bunu yapmak yazdığı kod çalışır, ancak ben çok büyük derin sıralama dosyaları ile çalışıyorum ve bir gün boyunca çalıştıktan ve çok ilerleme olmamıştır. Yani mümkünse bunu daha hızlı hale getirmek için herhangi bir öneri arıyorum. Teşekkürler.
def method():
target = open(output_file, 'w')
with open(input_file, 'r') as f:
lineCharsList = []
for line in f:
#Make string from first and last 6 characters of a line
lineChars = line[0:6]+line[145:151]
if not (lineChars in lineCharsList):
lineCharsList.append(lineChars)
target.write(lineChars + '\n') #If string is unique, write to output file
for skip in range(3): #Used to step through four lines at a time
try:
check = line #Check for additional lines in file
next(f)
except StopIteration:
break
target.close()
Im lineCharsList büyük alır sonra senaryo çok yavaş alacak olduğunu. Hiçbir öneri yok ama sorunun büyük olasılıkla olduğu yer. – Loocid
Ben de böyle düşünüyorum. Bir bilgisayar küme üzerinde çalıştığım kadar RAM bir sorun olmamalı. Ama bunu yapmak için daha iyi bir yol olup olmadığından emin değilim. Bir kenara –
, sen '' 'with''' açıklamada çıktı dosyası içerebilir -' açık (input_file, 'r'), hedef olarak f, açık (çıkış_dosyası, 'w') olarak: '' '. – wwii