2017-12-30 18 views
1

Ich bin ein Neuling bei Python & Ich habe ein Web-Scraper-Programm, das Links abgerufen und legt sie in eine CSV-Datei. Ich muss nach jedem Weblink in der Ausgabe eine neue Zeile hinzufügen, aber ich weiß nicht, wie man das \ n richtig verwendet. Hier ist mein Code:Neue Zeile zur Ausgabe in CSV-Datei in Python

file = open('C:\Python34\census_links.csv', 'a') 
    file.write(str(census_links)) 
    file.write('\n') 

Antwort

2

Fest Ihre Frage zu beantworten, ohne das Format der Variablen census_links zu kennen.

Aber es vorausgesetzt ist ein list, die mehrere Verbindungen bestehend aus strings enthält, können Sie durch jeden Link in der Liste analysieren möchte und ein Newline-Zeichen an das Ende eines bestimmten Link anhängen und dann den Link + newline zu den Schreib Ausgabedatei:

file = open('C:/Python34/census_links.csv', 'a') 

# Simulating a list of links: 
census_links = ['example.com', 'sample.org', 'xmpl.net'] 

for link in census_links: 
    file.write(link + '\n')  # append a newline to each link 
            # as you process the links 

file.close()   # you will need to close the file to be able to 
        # ensure all the data is written. 
+0

'print (x, file = f) 'ist ein anderer Weg zu tun 'f.write (x + '\ n')'. –

+0

@MadPhysicist ... was du sagst, ist definitiv wahr, danke fürs Teilen. Ich entschied mich zu versuchen, so nah wie möglich am ursprünglichen Code-Layout des OP zu bleiben, um die kognitive Belastung zu minimieren. –

+1

Das ist wahrscheinlich eine gute Idee. Ich werde den Kommentar hier für die Nachwelt hinterlassen. –

2

E. Ducateme hat bereits beantwortet die Frage, aber man könnte auch das csv-Modul verwenden (die meisten der Code ist aus here):

import csv 

# This is assuming that “census_links” is a list 
census_links = ["Example.com", "StackOverflow.com", "Google.com"] 
file = open('C:\Python34\census_links.csv', 'a') 
writer = csv.writer(file) 

for link in census_links: 
    writer.writerow([link])