Döngüde dize birleştirme (ARCH2070)
Anahtar python.performance.string-concat-in-loop · Önem warning · Kategori performance
Dizeler değişmezdir; döngü içinde += ile biriktirmek her adımda yeni bir kopya oluşturur ve O(n²) maliyete yol açar. Parçaları bir listede toplayıp sonda join ile birleştirin.
Hatalı
Bölüm başlığı “Hatalı”def render(items): out = "" for item in items: out += str(item) + "," return outdef render(items): parts = [str(item) for item in items] return ",".join(parts) + "," if parts else ""Düzeltme
Bölüm başlığı “Düzeltme”Parçaları bir listede toplayın ve döngüden sonra "".join(...) ile tek seferde birleştirin.