質問編集履歴
3
title
CHANGED
File without changes
|
body
CHANGED
@@ -21,10 +21,10 @@
|
|
21
21
|
元ファイルの値を変えることなく書き出す方法はあるのでしょうか。
|
22
22
|
|
23
23
|
### 試したこと
|
24
|
-
yaml.safe_load に関しては、まずreadで文字列として読み込むことで
|
24
|
+
yaml.safe_load に関しては、まずreadで文字列として読み込むことで回避ができました。
|
25
25
|
|
26
26
|
しかし、yaml.dump については回避方法がわかりません。
|
27
|
-
yaml.dumpのようにyamlファイルに改行やインデントをつけて書き出したい
|
27
|
+
yaml.dumpのようにyamlファイルに改行やインデントをつけて書き出したいです。
|
28
28
|
|
29
29
|
### 該当のソースコード / 実行内容
|
30
30
|
######file_in.yaml
|
2
ソースの不備を修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -45,11 +45,11 @@
|
|
45
45
|
```Python3
|
46
46
|
import yaml
|
47
47
|
|
48
|
-
with open(file_in.yaml, 'rt') as f:
|
48
|
+
with open("file_in.yaml", 'rt') as f:
|
49
49
|
text = f.read()
|
50
50
|
data = yaml.safe_load(text)
|
51
51
|
|
52
|
-
with open(file_out.yaml, 'w') as f:
|
52
|
+
with open("file_out.yaml", 'w') as f:
|
53
53
|
yaml.dump(data, f, sort_keys=False)
|
54
54
|
|
55
55
|
```
|
1
項目の順序を変更
title
CHANGED
File without changes
|
body
CHANGED
@@ -3,6 +3,10 @@
|
|
3
3
|
PyYAMLを使って書き出しをしようしているのですが、yaml.dumpをすると一部の値が勝手に書き換わってしまいます。
|
4
4
|
これを回避する方法について、アドバイスをいただきたいです。
|
5
5
|
|
6
|
+
### 環境
|
7
|
+
- Python 3.6.8
|
8
|
+
- PyYAML 5.3.1
|
9
|
+
|
6
10
|
### 発生している問題・エラーメッセージ
|
7
11
|
読み込むyamlファイルは以下の条件を満たしています。
|
8
12
|
0. 空白(null)のvalueが存在
|
@@ -16,10 +20,12 @@
|
|
16
20
|
|
17
21
|
元ファイルの値を変えることなく書き出す方法はあるのでしょうか。
|
18
22
|
|
19
|
-
###
|
23
|
+
### 試したこと
|
20
|
-
|
24
|
+
yaml.safe_load に関しては、まずreadで文字列として読み込むことでことで回避ができました。
|
21
|
-
- PyYAML 5.3.1
|
22
25
|
|
26
|
+
しかし、yaml.dump については回避方法がわかりません。
|
27
|
+
yaml.dumpのようにyamlファイルに改行やインデントをつけて書き出したいので、writeだと希望の結果になりません
|
28
|
+
|
23
29
|
### 該当のソースコード / 実行内容
|
24
30
|
######file_in.yaml
|
25
31
|
```yaml
|
@@ -60,9 +66,4 @@
|
|
60
66
|
bool4: false
|
61
67
|
ex3:
|
62
68
|
times: 750
|
63
|
-
```
|
69
|
+
```
|
64
|
-
### 試したこと
|
65
|
-
yaml.safe_load に関しては、まずreadで文字列として読み込むことでことで回避ができました。
|
66
|
-
|
67
|
-
しかし、yaml.dump については回避方法がわかりません。
|
68
|
-
yaml.dumpのようにyamlファイルに改行やインデントをつけて書き出したいので、writeだと希望の結果になりません
|