2017-10-01 11 views
4

この質問はかなり尋ねられています。私が遭遇したそれぞれの解決方法を試しましたが、成功しませんでした。私はすべての変数とその値を次の2行を使用して印刷しようとしています。すべての変数とその値を出力

for name, value in globals(): 
    print(name, value) 

これはエラーを与える:Too many values to unpack 私は実行します。

for name in globals(): 
    print(name) 

私は唯一の変数の名前を取得します。どんな助けもありがとう。 -

+0

プリントアウトの例を挙げることはできますか? –

答えて

6

globals()dictを返すので、dictのキー/値のペアを反復処理するために、あなたはそれがitems()メソッドの呼びかけ:

dog = 'cat' 
>>> for name, value in globals().items(): 
...  print(name, value) 
... 
('__builtins__', <module '__builtin__' (built-in)>) 
('__name__', '__main__') 
('dog', 'cat') 
('__doc__', None) 
('__package__', None) 
>>> 

これはデータ構造のためのドキュメントの中に説明され、利用可能here!

+2

(このループはpython2内でのみ動作し、python3はコピーが必要です: 'globals()。items()') – PRMoureu

+1

偉大なキャッチ! *私はPython 3を使ってテストしていません。:P – n1c9

関連する問題