[解決済み] defaultdictをdictに変換する方法は?
2022-02-07 19:28:55
質問
を変換するにはどうすればよいですか?
defaultdict
number_to_letter
defaultdict(<class 'list'>, {'2': ['a'], '3': ['b'], '1': ['b', 'a']})
を共通化することで
dict
?
{'2': ['a'], '3': ['b'], '1': ['b', 'a']}
解決方法は?
を呼び出すだけです。
dict
:
>>> a
defaultdict(<type 'list'>, {'1': ['b', 'a'], '3': ['b'], '2': ['a']})
>>> dict(a)
{'1': ['b', 'a'], '3': ['b'], '2': ['a']}
が、defaultdictの は はディクショナリーです。
>>> isinstance(a, dict)
True
ただ、若干挙動が異なり、欠落しているキーにアクセスしようとすると -- 通常は
KeyError
-- は
default_factory
が代わりに呼び出されます。
>>> a.default_factory
<type 'list'>
というのが表示されます。
print a
の前に、データ側の辞書が表示されます。
つまり、実際に新しいオブジェクトを作ることなく、よりディクショナリーな振る舞いを取り戻すためのもう一つのトリックは、リセットすることです。
default_factory
:
>>> a.default_factory = None
>>> a[4].append(10)
Traceback (most recent call last):
File "<ipython-input-6-0721ca19bee1>", line 1, in <module>
a[4].append(10)
KeyError: 4
しかし、たいていの場合、これはトラブルに見合うものではありません。
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Python機械学習Githubが8.9Kstarsに達したモデルインタープリタLIME
-
Evidentlyを用いたPythonデータマイニングによる機械学習モデルダッシュボードの作成
-
PythonによるExcelファイルの一括操作の説明
-
PythonでECDSAを実装する方法 知っていますか?
-
[解決済み】お使いのCPUは、このTensorFlowバイナリが使用するようにコンパイルされていない命令をサポートしています。AVX AVX2
-
[解決済み】 NameError: グローバル名 'xrange' は Python 3 で定義されていません。
-
[解決済み】 AttributeError: モジュール 'matplotlib' には属性 'plot' がない。
-
[解決済み】IndexError: invalid index to scalar variableを修正する方法
-
[解決済み] TypeError: 'DataFrame' オブジェクトは呼び出し可能ではない
-
[解決済み】django インポートエラー - core.managementという名前のモジュールがない