タグ付けされた質問 「dictionary」

辞書はキーを値にマッピングし、キーから値を効率的に取得できるようにします。データに対する関数のマッピングに関する[map-function]タグを使用してください。地理については[maps]。

6
JSON文字列をリストではなくディクショナリに変換する
JSONファイルを渡して、データを辞書に変換しようとしています。 これまでのところ、これは私がやったことです: import json json1_file = open('json1') json1_str = json1_file.read() json1_data = json.loads(json1_str) 型であると期待しjson1_dataていますdictが、実際listにでチェックすると型として出力されtype(json1_data)ます。 何が欠けていますか?これを辞書にして、キーの1つにアクセスできるようにする必要があります。

8
辞書とデフォルト値
connectionDetailsPython辞書であると仮定して、このようなコードをリファクタリングするための最良で最もエレガントで最も「パイソン的な」方法は何ですか? if "host" in connectionDetails: host = connectionDetails["host"] else: host = someDefaultValue

20
辞書のキーを印刷する方法は?
特定のPython辞書キーを印刷したいと思います。 mydic = {} mydic['key_name'] = 'value_name' これで確認できmydic.has_key('key_name')ますが、キーの名前を出力するのが目的です'key_name'。もちろんを使用することもできますがmydic.items()、リストされているすべてのキーではなく、1つの特定のキーだけが必要です。たとえば、私はこのようなものを(擬似コードで)期待します: print "the key name is", mydic['key_name'].name_the_key(), "and its value is", mydic['key_name'] name_the_key()キー名を出力する方法はありますか? 編集: OK、あなたの反応をたくさんの人に感謝します!:)私の質問はよく定式化されておらず、些細なことではありません。key_nameとmydic['key_name']2つの異なることに気付いて混乱しましたkey_name。辞書のコンテキストから出力するのは正しくないと思いました。しかし、確かに私は「key_name」を使用してキーを参照するだけです!:)
213 python  dictionary  key 

7
dictを初期化するための推奨構文は何ですか:中括弧リテラル{}またはdict()関数?
私はPythonを学ぶために少し努力していますが、一般的なコーディング標準に細心の注意を払っています。これは無意味にひねくれた質問のように思えるかもしれませんが、私は学習しながらベストプラクティスに焦点を合わせようとしているため、「悪い」習慣を習得する必要はありません。 辞書を初期化する一般的な方法は2つあります。 a = { 'a': 'value', 'another': 'value', } b = dict( a='value', another='value', ) 「よりpythonic」と考えられているのはどれですか?どちらを使いますか?どうして?
212 python  dictionary 

7
任意の条件関数に従って辞書をフィルタリングする方法は?
ポイントの辞書があります。 >>> points={'a':(3,4), 'b':(1,2), 'c':(5,5), 'd':(3,3)} xとyの値が5より小さいすべてのポイント、つまりポイント 'a'、 'b'、および 'd'で新しい辞書を作成したいと思います。 よるとこの本は、それぞれの辞書は持っているitems()のリストを返す関数、(key, pair) タプルを: >>> points.items() [('a', (3, 4)), ('c', (5, 5)), ('b', (1, 2)), ('d', (3, 3))] だから私はこれを書いた: >>> for item in [i for i in points.items() if i[1][0]<5 and i[1][1]<5]: ... points_small[item[0]]=item[1] ... >>> points_small {'a': (3, 4), 'b': …


10
dictリテラルとdictコンストラクターの使用に違いはありますか?
PyCharmを使用して、私はそれがdictリテラルを変換することを提案していることに気づきました: d = { 'one': '1', 'two': '2', } dictのコンストラクタ: d = dict(one='1', two='2') これらの異なるアプローチは、いくつかの重要な点で異なりますか? (この質問を書いているときにdict()、数字キーを指定することは不可能に思われることに気づきましたd = {1: 'one', 2: 'two'}が、もちろん、可能でdict(1='one' ...)はありません。他に何かありますか?)

20
ネストされた辞書を実装する最良の方法は何ですか?
私は本質的にネストされた辞書に相当するデータ構造を持っています。次のようになっているとします。 {'new jersey': {'mercer county': {'plumbers': 3, 'programmers': 81}, 'middlesex county': {'programmers': 81, 'salesmen': 62}}, 'new york': {'queens county': {'plumbers': 9, 'salesmen': 36}}} さて、これを維持して作成することはかなり苦痛です。新しい州/郡/職業があるたびに、厄介なtry / catchブロックを介して下位層の辞書を作成する必要があります。さらに、すべての値を調べたい場合は、煩わしいネストされたイテレータを作成する必要があります。 次のように、タプルをキーとして使用することもできます。 {('new jersey', 'mercer county', 'plumbers'): 3, ('new jersey', 'mercer county', 'programmers'): 81, ('new jersey', 'middlesex county', 'programmers'): 81, ('new jersey', 'middlesex county', 'salesmen'): …


9
Python辞書の保存
私は.csvファイルを使用してデータをPythonに出し入れすることに慣れていますが、これには明らかな課題があります。辞書(または辞書のセット)をjsonまたはpckファイルに格納する簡単な方法についてアドバイスはありますか?例えば: data = {} data ['key1'] = "keyinfo" data ['key2'] = "keyinfo2" これを保存する方法と、ロードする方法の両方を知りたいです。
198 python  json  dictionary  save  pickle 

11
地図と辞書の違いは何ですか?
マップがキーを値にマップするデータ構造であることは知っています。辞書は同じではありませんか?地図と辞書1の違いは何ですか? 1.それらが言語XまたはYでどのように定義されているかを尋ねているのではなく(これは一般にSOでここで求められているようです)、理論の違いを知りたいです。


16
'setdefault' dictメソッドの使用例
の追加 collections.defaultdictPython 2.5で、dictのsetdefaultメソッドの必要性が大幅に減少しました。この質問は私たちの集団教育に対するものです: 今setdefaultでもPython 2.6 / 2.7で何が役に立つのですか? setdefaultに取って代わられた人気のあるユースケースは何collections.defaultdictですか?

8
Pythonでキーエラーが発生します
私のpythonプログラムでは、次のエラーが発生します。 KeyError: 'variablename' このコードから: path = meta_entry['path'].strip('/'), なぜこれが起こっているのか誰でも説明できますか?
190 python  dictionary 

12
Pythonでリストを辞書に変換する
aエントリが辞書にマップされるPythonのリストがあるとします。各偶数要素は辞書のキーを表し、次の奇数要素は値です 例えば、 a = ['hello','world','1','2'] それを辞書に変換したいのですがb、 b['hello'] = 'world' b['1'] = '2' これを達成する構文的に最もクリーンな方法は何ですか?
189 python  list  dictionary 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.