回答編集履歴

3

追記

2019/09/10 23:02

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -49,3 +49,69 @@
49
49
  [0, 1, 2]
50
50
 
51
51
  ```
52
+
53
+
54
+
55
+ なぜカンマを付けると角括弧が出現する?
56
+
57
+ ---
58
+
59
+ カンマを付けるとPythonの文法上1要素のタプルとして取り扱われます。
60
+
61
+ ```Python
62
+
63
+ >>> a = 42
64
+
65
+ >>> type(a)
66
+
67
+ <class 'int'>
68
+
69
+ >>>
70
+
71
+ >>> a = 42,
72
+
73
+ >>> type(a)
74
+
75
+ <class 'tuple'>
76
+
77
+ >>> a
78
+
79
+ (42,)
80
+
81
+ >>> a[0]
82
+
83
+ 42
84
+
85
+ ```
86
+
87
+
88
+
89
+ JSONは仕様にタプルを持たないので、類似の構造として配列が使われます。
90
+
91
+ 1要素の配列だから角括弧が付いたのです。それだけ。
92
+
93
+ ```Python
94
+
95
+ >>> a = 42,
96
+
97
+ >>> b = list(a)
98
+
99
+ >>> b
100
+
101
+ [42]
102
+
103
+ ```
104
+
105
+
106
+
107
+ ---
108
+
109
+ 『カンマを付けたいから試しにコードに付けてみた』というのはあまりに短絡的です。
110
+
111
+ 基礎から少しずつ実力を身に付けましょう。
112
+
113
+
114
+
115
+ [公式チュートリアル](https://docs.python.org/ja/3/tutorial/index.html)は、プログラミング初心者にとっては少し取っつき辛いのが難点です。
116
+
117
+ 書店に行ってできるだけ新しい入門書を買ってくるのが無難です。

2

修正

2019/09/10 23:02

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -26,6 +26,8 @@
26
26
 
27
27
  with open('file2.json', mode='w') as fout:
28
28
 
29
+ fout.write(json.dumps(dst))
30
+
29
31
  ```
30
32
 
31
33
 

1

追記

2019/09/10 22:47

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -1,4 +1,4 @@
1
- 少なくともJson形式の結果得たいなら
1
+ JSON形式を利用するなら、
2
2
 
3
3
  追記モードを使わず一回でドカンと出力するものなのだと思って下さい。
4
4
 
@@ -27,3 +27,23 @@
27
27
  with open('file2.json', mode='w') as fout:
28
28
 
29
29
  ```
30
+
31
+
32
+
33
+ **実行結果:file1.json**
34
+
35
+ ```json
36
+
37
+ 012
38
+
39
+ ```
40
+
41
+
42
+
43
+ **実行結果:file2.json**
44
+
45
+ ```json
46
+
47
+ [0, 1, 2]
48
+
49
+ ```