2016-10-11 6 views
0

私は2つのリストpythonのcomprehensionsでprintコマンドを使用するには?

Set = [1,2,3,4,5] 
Value = [11,12,14,15,16] 

を持って、私は印刷する必要があります。

"Set1 Value=11 
Set2 Value=12 
Set3 Value=14 
.... " 

マイコード:

k = [print("Set" + str(a)+ " " + "Value=" + str(b) + /n) for i in a,b in zip(Set, Value)] 

しかし、私はあなたのプログラムに "無効な構文" と言ってerorrを取得します。理解は印刷物を受け入れないのですか?どのように私はこれを修正することができますか?

+1

をこれはpython2で –

+1

'print'は声明で、文は混在させることはできませんので、多くのレベルで間違っています表現で。これを行うには、ファイルの先頭に 'from __future__ import print_function'を使い、' print'を関数にするしかありません。いずれにしても、 'k'リストは' None'のリストにすぎませんので、私は実際にこの点を見ません... – Bakuriu

+1

'_ = [print {" Set {} Value = {} " 。zip(Set、Value)]のi、jのための.format(i、j)) 'を返します。 –

答えて

3

この1行でトリックを行います:

Set = [1,2,3,4,5] 
Value = [11,12,14,15,16] 

print("\n".join([('Set{} Value={}'.format(i,j)) for i,j in zip(Set,Value)])) 

出力:

Set1 Value=11 
Set2 Value=12 
Set3 Value=14 
Set4 Value=15 
Set5 Value=16 
+3

Python 3では 'print(*( '(Set {} Value = {}'、zip(Set、Value))、sep = '\ n')'のi、 'from __future__ import print_function'です。それで 'print()'もあなたのために文字列に変換されます。これは文字列ではないオブジェクトを生成する際の追加の利点です。 –

関連する問題