回答編集履歴

1

追記

2018/09/10 07:28

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -69,3 +69,53 @@
69
69
  どちらにせよ『辞書らしい』使い方にはならないので、
70
70
 
71
71
  本当にスライスに依る切り出しが必要かどうかはしっかり検討した方が良いです。
72
+
73
+
74
+
75
+ コメントを受けて
76
+
77
+ ---
78
+
79
+ > 以下のように一般的な辞書宣言はできないという理解で正しいでしょうか。
80
+
81
+
82
+
83
+ #### Python3.6なら
84
+
85
+ キーワード引数の挿入順序なら既に保証されているので、次のように書けます。
86
+
87
+ ```Python
88
+
89
+ dct = SliceableDict(
90
+
91
+ a=['apple', 'assimulation'],
92
+
93
+ b=['banana', 'bag'],
94
+
95
+ c=['cap', 'cat']
96
+
97
+ )
98
+
99
+ ```
100
+
101
+
102
+
103
+ #### Python3.7、あるいはCPython実装の3.6では
104
+
105
+ 辞書表現の評価順序が以前のバージョンから保証されているほか、
106
+
107
+ 組み込み辞書の挿入順序が新たに保証されているので、次のように書けます。
108
+
109
+ ```Python
110
+
111
+ dct = SliceableDict({
112
+
113
+ 'a': ['apple', 'assimulation'],
114
+
115
+ 'b': ['banana', 'bag'],
116
+
117
+ 'c': ['cap', 'cat']
118
+
119
+ })
120
+
121
+ ```