Nota prawna: Jestem w Europie.Python csv writer wrong separator?
Zgodnie z this page program Excel używa średnika ;
jako domyślnego separatora w Europie, aby "zapobiegać konfliktom" za pomocą przecinka dziesiętnego.
Teraz mam ten kod Pythona:
import csv
data = [["test", "data"], ["foo", "bar"]]
writer = csv.writer(open("data.csv", "wb"), dialect="excel")
writer.writerows(data)
Który powinien wygenerować ten plik
test;data
foo;bar
ale zamiast tego używa przecinków. Dlaczego to się dzieje? locale.getdefaultlocale()
zwraca ('nl_NL', 'cp1252')
.
Nie rozumiem słowa w dół. Jest to istotny problem, pokazuje wysiłek badawczy, a rozwiązanie nie jest tak oczywiste. –
Różne niepowiązane pytania: Czy przeczytałeś czwartą odpowiedź na "tej stronie", którą cytowałeś? Kim są przeznaczeni użytkownicy tego pliku SSV - ludzie lub komputery? Co oni z tym zrobią? Czy zastanawiałeś się nad napisaniem pliku XLS lub XLSX (który może być ustawiony na agnostykę lokalną, z zachowaniem ostrożności)? –