回答編集履歴

2

エスパー回答を追加

2018/06/26 08:40

投稿

can110
can110

スコア38234

test CHANGED
@@ -63,3 +63,25 @@
63
63
  4,6,8
64
64
 
65
65
  ```
66
+
67
+
68
+
69
+ #### もしかして
70
+
71
+ ```Python
72
+
73
+ a = ['1\n','2\n','3\n','4\n','5\n'] # テキストをreadlinesなりで読み込んだ。よって末尾に改行がついたまま。
74
+
75
+ print(*a,sep='',end='\r\n') # 区切を空文字にしているのになぜか改行してしまう
76
+
77
+
78
+
79
+ print('↓')
80
+
81
+
82
+
83
+ a = [l.rstrip() for l in a] # 末尾空白(改行含む)を除去する
84
+
85
+ print(*a,sep=' ') # 空白区切で出力する
86
+
87
+ ```

1

回答修正

2018/06/26 08:40

投稿

can110
can110

スコア38234

test CHANGED
@@ -2,14 +2,64 @@
2
2
 
3
3
  [csvモジュール](https://docs.python.org/ja/3/library/csv.html#module-csv)を利用すれば、見出し行や区切り文字の指定など、より柔軟に出力できますが。
4
4
 
5
+
6
+
7
+ #### 回答修正
8
+
9
+ 行毎のデータを読込、行を抽出、列方向に出力する例です。
10
+
5
11
  ```Python
6
12
 
13
+ # 行毎にリストsrcに格納
14
+
15
+ with open('inp.csv') as f:
16
+
17
+ lines = f.readlines()
18
+
19
+ src = [l.rstrip('\r\n') for l in lines]
20
+
21
+
22
+
23
+ # 1~3行目までを抽出
24
+
7
- a = [1,2,3,4,5]
25
+ dst = src[1:4]
26
+
27
+
28
+
29
+ # 抽出したリストを列方向にカンマ区切りで1行出力
8
30
 
9
31
  with open('ret.csv','w') as f: # .csvで出力
10
32
 
11
- f.write( ','.join([str(v) for v in a])) # リストの各値を文字にして','で連結
33
+ f.write( ','.join([str(v) for v in dst])) # リストの各値を(文字にして)','で連結
12
34
 
13
35
  f.write('\n')
14
36
 
15
37
  ```
38
+
39
+
40
+
41
+ inp.csv
42
+
43
+ ```PlainText
44
+
45
+ 2
46
+
47
+ 4
48
+
49
+ 6
50
+
51
+ 8
52
+
53
+ 10
54
+
55
+ ```
56
+
57
+
58
+
59
+ ret.csv
60
+
61
+ ```PlainText
62
+
63
+ 4,6,8
64
+
65
+ ```