teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

変更

2018/05/18 09:49

投稿

hayataka2049
hayataka2049

スコア30939

answer CHANGED
@@ -30,7 +30,7 @@
30
30
  dst_filename = sys.argv[1]
31
31
 
32
32
  f_in = open(path, "r", encoding="utf-8")
33
- f_out = open(dst_filename, 'w', encoding='utf-8')
33
+ f_out = open(dst_filename, 'w', encoding='utf-8', newline='') # can110様のご指摘をうけて改善
34
34
  reader = csv.DictReader(f_in)
35
35
  writer = csv.writer(f_out)
36
36
  for line in reader:

1

例を増やした

2018/05/18 09:49

投稿

hayataka2049
hayataka2049

スコア30939

answer CHANGED
@@ -19,4 +19,22 @@
19
19
 
20
20
  でも、そもそもこれよりこっちを使うべき。csv.writer.writerowでいけます。
21
21
 
22
- [Pythonでcsvファイルにデータを書き込みをする基本中の基本](https://tonari-it.com/python-csv-writer-writerow/#toc3)
22
+ [Pythonでcsvファイルにデータを書き込みをする基本中の基本](https://tonari-it.com/python-csv-writer-writerow/#toc3)
23
+
24
+ ```python
25
+ import csv
26
+ import os.path
27
+
28
+ dirname = os.path.dirname(__file__)
29
+ path = os.path.join(dirname,"test.csv")
30
+ dst_filename = sys.argv[1]
31
+
32
+ f_in = open(path, "r", encoding="utf-8")
33
+ f_out = open(dst_filename, 'w', encoding='utf-8')
34
+ reader = csv.DictReader(f_in)
35
+ writer = csv.writer(f_out)
36
+ for line in reader:
37
+ writer.writerow([line["status"], line["user_id"]])
38
+ f_in.close()
39
+ f_out.close()
40
+ ```