2017-10-24 10 views
0

私は約20のキーを持つ巨大な辞書FPKMを扱っていますが、各キーには100万の値のリストがあります。私はprint(FPKM)を使ってすべてを印刷しようとしましたが、キーを印刷するだけです。何が問題でしょうか? また、このFPKMオブジェクトをピクルアウトしたいのですが、pickleファイルにキーだけが格納されていることが判明しました。巨大な辞書をPythonで保存または印刷する


ご存知のとおり、私のケースは真実ではなかったことをお詫び申し上げます。私はそれだけで印刷されたキーが

印刷(ソート(FPKMを))私は

fpkm =ソート(FPKM)

プリント(fpkm)

をすれば、それが働いていました。 pickleの場合も同様のケースでした。純粋なオブジェクト名の代わりに「sorted」を使用しました。

本当にありがとうございます。小さな辞書を用いて、大きなものは同様の挙動を確認

+0

をあなたはFPKMにおけるkのために '試みることができる:辞書を印刷するキーだけを印刷した場合FPKM [k]は' –

+4

を印刷し、それは辞書ではありません。 – kindall

+0

* "print(FPKM)を使用してすべてを印刷しようとしましたが、キーを印刷するだけです。print {{'key1':1、 'key2':2}) '私に' {'key1':1、 'key2':2} 'を与えます。 – sam

答えて

0

実践:

#! /usr/bin/env python3 

d = {'foo': [1, 2], 
    'bar': [3, 4]} 
print(type(d)) 
for k, v in d.items(): 
    print(k, v) 
0

私はすべてを印刷するプリント(FPKM)を使用しようとしたが、それはキーのみを印刷します。

私はそうは思わない。

a = {'hello': 'world'} 
print(a) # The entire dictionary is printed {'hello': 'world'} 

私はまた、このFPKMオブジェクトをpickle化したかったが、それはキーのみが漬物ファイルに格納されていたことが判明。

How can I use pickle to save a dict?

import pickle 
a = {'hello': 'world'} 
with open('filename.pickle', 'wb') as f: 
    pickle.dump(a, f, protocol=pickle.HIGHEST_PROTOCOL) 

with open('filename.pickle', 'rb') as f: 
    b = pickle.load(f) 

print(a == b) # True 
print(b) # The original dictionary persists {'hello': 'world'} 
0

を参照してください。私はすべてを印刷するプリント(FPKM)を使用しようとしたが、それはキーのみを出力します。

これらはFPKMの内容であると言うことができます:

FPKM = {'one': 1, 
     'two': 2, 
     'three': 3 
} 

FPKMが辞書であれば、それを印刷するので、のような完全な辞書を印刷する必要があります。

{'one': 1, 'two': 2, 'three': 3} 

あなたではなく、このような何かをやっていないことを確認します。印刷し

for key in FPKM: 
    print(key) 

one 
two 
three 
関連する問題