2017-09-30 11 views
0

私は値がこのようなoutputsのリストを返す値inputsのリストの上に機能ループしています:キーが入力で、値が出力である関数からキーと値のペアを返す方法はありますか?

outputs = [] 
for i in inputs[:]: 
    outputs.append(str(function(i))) 

私は以下のように入力と出力のキーと値のペアを移入した辞書を設定するにはどうすればよいの?

input1, output1 
input2, output2 
+0

{i:str(function(i))を入力に使う} { –

+1

}あなたはループの 'inputs'を変更していないので、余計なことはありませんonを繰り返して新しいリストを作成します。 '私はインプットのために:'うまいです。 – chepner

答えて

0

は、あなただけの、入力の上に機能をマッピングし、元の入力と結果を圧縮しdictにタプルのそのシーケンスを渡すことができます。

d = dict(zip(inputs, [str(function(i)) for i in inputs])) 
2

辞書の理解度はこれをかなり簡単に使用できます。

def function(s): 
    return s.replace('input', 'output') 
inputs = ['input1', 'input2'] 
pairs = {i: str(function(i)) for i in inputs} 
print(pairs) 

出力

{'input1': 'output1', 'input2': 'output2'} 
関連する問題