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

回答編集履歴

6

修正

2020/05/17 10:43

投稿

tiitoi
tiitoi

スコア21960

answer CHANGED
@@ -1,4 +1,4 @@
1
- Python 3.7未満であれば、dict のキーの順番は保持されません。
1
+ Python 3.6 未満であれば、dict のキーの順番は保持されません。
2
2
  キーを挿入した順番を保持したい場合は collections.OrderedDict をお使いください。
3
3
 
4
4
  ```python
@@ -27,7 +27,7 @@
27
27
  print k
28
28
  ```
29
29
 
30
- Python 3.7 以降であれば、通常の dict でもキーの挿入順が保持されます。
30
+ Python 3.6 以降であれば、通常の dict でもキーの挿入順が保持されます。
31
31
 
32
32
  ## 追記
33
33
 

5

修正

2020/05/17 10:43

投稿

tiitoi
tiitoi

スコア21960

answer CHANGED
@@ -1,4 +1,4 @@
1
- Python 3.6未満であれば、dict のキーの順番は保持されません。
1
+ Python 3.7未満であれば、dict のキーの順番は保持されません。
2
2
  キーを挿入した順番を保持したい場合は collections.OrderedDict をお使いください。
3
3
 
4
4
  ```python
@@ -27,7 +27,7 @@
27
27
  print k
28
28
  ```
29
29
 
30
- Python 3.6 以降であれば、通常の dict でもキーの挿入順が保持されます。
30
+ Python 3.7 以降であれば、通常の dict でもキーの挿入順が保持されます。
31
31
 
32
32
  ## 追記
33
33
 

4

修正

2020/05/17 10:41

投稿

tiitoi
tiitoi

スコア21960

answer CHANGED
@@ -1,4 +1,4 @@
1
- Python 3.6未満であれば、dict のキーの順番は不定です
1
+ Python 3.6未満であれば、dict のキーの順番は保持されません
2
2
  キーを挿入した順番を保持したい場合は collections.OrderedDict をお使いください。
3
3
 
4
4
  ```python

3

修正

2020/05/17 10:38

投稿

tiitoi
tiitoi

スコア21960

answer CHANGED
@@ -27,4 +27,10 @@
27
27
  print k
28
28
  ```
29
29
 
30
- Python 3.6 以降であれば、通常の dict でもキーの挿入順が保持されます。
30
+ Python 3.6 以降であれば、通常の dict でもキーの挿入順が保持されます。
31
+
32
+ ## 追記
33
+
34
+ すいません。回答した後に気づいたのですが、Python 2系だと OrderedDict は使えないですね。Python 2 はサポート切れてますし、バージョンを上げることをおすすめします。
35
+
36
+ [collections --- コンテナデータ型 — Python 3.8.3 ドキュメント](https://docs.python.org/ja/3/library/collections.html?highlight=ordereddict#ordereddict-objects)

2

修正

2020/05/17 10:37

投稿

tiitoi
tiitoi

スコア21960

answer CHANGED
@@ -16,4 +16,15 @@
16
16
  # key3
17
17
  ```
18
18
 
19
+ 初期化時に中身を設定する場合
20
+
21
+ ```python
22
+ from collections import OrderedDict
23
+
24
+ d = OrderedDict(key1=1, key2=2, key3=3)
25
+
26
+ for k in d:
27
+ print k
28
+ ```
29
+
19
30
  Python 3.6 以降であれば、通常の dict でもキーの挿入順が保持されます。

1

修正

2020/05/17 10:34

投稿

tiitoi
tiitoi

スコア21960

answer CHANGED
@@ -1,5 +1,5 @@
1
- Python 3.6未満であれば、辞書のキーの順番は不定です。
1
+ Python 3.6未満であれば、dict のキーの順番は不定です。
2
- なので、辞書にキーを挿入した順番を保持したい場合は collections.OrderedDict をお使いください。
2
+ キーを挿入した順番を保持したい場合は collections.OrderedDict をお使いください。
3
3
 
4
4
  ```python
5
5
  from collections import OrderedDict