2016-03-21 16 views
0

Python'un csv modülünde bir sorunla karşılaştım. Gerçekten de bir metin yığınım var. Listeler listesine benzeyen bir şeye dönüştürdüm. Örneğin, benim veri ben bir csv dosyasına veya bir metin dosyasına veri vermek istediğiniz bulistelerin listesi csv'ye?

data = ["Hello", "how", "are", "you"] 
["Fine", "and" ,"you"] 

benziyor.

Csv modülünün .writerow() yöntemini kullandığımda, SADECE corpus'un bir listesini döndürecek ve neden anlamıyorum (corpus'un ilk bile değil ...)

İşte

import csv 
with open('twitter_test_python.csv',"r", encoding='utf8') as csvfile: 
    spamreader = csv.reader(csvfile , delimiter=" ", quotechar = "'") 
    for line in spamreader: 
     test = list(set(line) - set(swl)) 
     with open("test2.csv", 'w', encoding = 'utf8') as myfile : 
      wr = csv.writer(myfile)#, delimiter=';', quoting=csv.QUOTE_ALL, lineterminator = '\n') 
      wr.writerow([test]) 
birisi benim problem anlıyor mu

benim kodudur?

Çok teşekkürler,

+0

Niçin ikinci son satırda # var? – Muctadir

+0

@Muctadir, onların test için atlamış olduğu .writer() 'için isteğe bağlı parametreler olduklarını tahmin edeceğim, ancak referans için orada bıraktılar veya böylece eğer seçtiyse daha sonra tekrar eklenebilirler. Hata ayıkladığımda aynı şeyi yapıyorum ve ek parametrelerimin sorun olup olmadığını görmek için sınama yapıyorum. – SpencerD

+0

Evet, # kodumu hata ayıklamak için kullanıldı. Göndermeden önce # bir sürü geri aldım ama sanırım bunu fark etmedim. –

cevap

2

Size döngü geçmesi her defasında dosyanın üzerine gibidir:

import csv 
with open('twitter_test_python.csv',"r", encoding='utf8') as csvfile: 
    spamreader = csv.reader(csvfile , delimiter=" ", quotechar = "'") 
    with open("test2.csv", 'w', encoding = 'utf8') as myfile : 
     wr = csv.writer(myfile)#, delimiter=';', quoting=csv.QUOTE_ALL, lineterminator = '\n') 
     for line in spamreader: 
      test = list(set(line) - set(swl)) 
      wr.writerow([test]) 
:

for line in spamreader(): 

döngü dışında çıkış dosyasının açılmasını taşımayı deneyin

Bu şekilde çıktı dosyasını açmaz ve her seferinde üzerine yazarsınız.

+0

Çok teşekkürler! Şimdi iyi çalışıyor;) Gerçekten de benim döngümde bir sorun oldu. –

İlgili konular