python - Er det muligt at eksportere en liste til .txt sådan at linjeskift kan læses af notesblok?

Indlæg af Hanne Mølgaard Plasc

Problem



Af hensyn til tilgængelighedsgrunde undrer jeg mig over, at det i python er muligt at eksportere en liste til .txt sådan at linjeskift kan læses af notesblok? Nedenfor er et eksempel kode, der læses korrekt i notesblok ++, men ikke i notesblok. I notepad ++ er hver indtastning af listen på en separat linje, i notepad er alle poster på samme linje.


string =['str1 123','str2 234','str3 345']
outF = open("outp.txt", "w")
for item in string:
    outF.write("\%s
" \% item)
outF.close()

Bedste reference


Windows bruger C vogn R etern, L ine F eed: for at angive linjeskift, som er den eneste line-ending anerkendt af Windows notesblok:


In [7]: s = ['hello', 'world']

In [8]: with open('test.txt', 'w') as f:
   ...:     for item in s:
   ...:         f.write('\%s
' \% item)


Eksempel:


Indtast billedbeskrivelse her [5]


Linux-baserede systemer bruger L ine F eed til at angive linjeskift, og gamle Mac OS'er bruges til at bruge C vinkel R eturn, og en editor som Notepad ++ kan konfigureres til at genkende alle disse, mens notesblok ikke kan.

Andre referencer 1


Jeg vil udklare kommentarens svar lidt. Windows genkender kun vognretur som gyldige punkter for at lave en ny linje. Derfor er det bedst at bruge både vognretur og newline, når du laver et liniebrud i tekst.


Så gør:


outF.write("\%s
" \% item)