파이썬의 csv 작성기를 사용하여 고정 폭, 공백 구분 및 최소 인용 CSV 파일을 작성하고 싶습니다. 출력 예 :파이썬에서 고정 폭, 공백으로 구분 된 CSV 출력 쓰기
item1 item2
"next item1" "next item2"
anotheritem1 anotheritem2
제가
writer.writerow (("{0 : 15S}"을 사용하는 경우. 형식 (항목 1). "{0 : 15S를}"형식 (항목 2))) ...
다음
, 공간 분리와 포맷이 후미 공간으로 인하여 추가 시세 또는 이스케이프합니다 (csv.QUOTE_에 따라 상수 *) 중 하나로 깨 항목 형식 :
물론"item1 " "item2 "
"next item1 " "next item2 "
"anotheritem1 " "anotheritem2 "
, 나는 모든 것을 나 자신을 포맷 할 수 있습니다 :
writer.writerow ((. "{0 : 15 초} {1 : 15 초}"형식 (항목 1을 항목 2)))
하지만 csv 작성기 사용에 별다른 의미가 없습니다. 또한, 공간을 항목에 포함하고 따옴표/이스케이프를 사용해야 할 경우 수동으로 정렬해야합니다. 즉, "QUOTE_ABSOLUTELYMINIMAL"csv 상수가 "QUOTE_MINIMAL"역할을하지만 후행 공백을 무시할 필요가있는 것 같습니다.
"QUOTE_ABSOLUTELYMINIMAL"동작 또는 파이썬의 CSV 모듈을 사용하여 고정 폭, 공백으로 구분 된 CSV 출력을 얻는 다른 방법을 얻을 수있는 방법이 있습니까?
CSV 파일에서 고정 폭 기능을 사용하려는 이유는 더 읽기 쉽습니다. 따라서 읽기 및 쓰기 모두 CSV로 처리되지만 열 구조로 인해 더 잘 읽을 수 있습니다. csv skipinitialspace 옵션은 여분의 공백을 무시하므로 읽을 때 문제가되지 않습니다. 놀랍게도, 글쓰기가 문제가되는 것 같습니다 ...
편집 : 나는 현재의 CSV 플러그인으로는 성취하기가 불가능하다고 결론을 내립니다. 그것은 내장 된 옵션이 아니며, 파이썬의 csv 작성자가 따옴표를 사용하거나 이스케이프 처리하지 않고 별도의 구분 기호를 쓰는 방법이 없기 때문에 수동으로 구현하는 방법을 알 수 없습니다. 따라서 필자는 아마도 자신의 CSV 작성자를 작성해야 할 것입니다.
답장을 보내 주셔서 감사합니다. 그러나 링크 된 코드는 Python의 csv 플러그인을 사용하지 않으며 csv 출력용으로 사용되지 않습니다. 내 자신의 csv 작가를 작성하는 것은 가능하지만이 목적을 위해 파이썬의 것을 사용하는 방법이 있기를 바라고 있습니다 ... – jvm