2017-06-07 10 views
1

、私は2つのリストPythonのリスト2つのリスト私のpythonコードで

myList = ["Example", "Example2", "Example3"] 
mySecondList = ["0000", "1111", "2222"] 

を持っている私は、彼らがこのように見えるように、これらを印刷する必要があります。

- Example 0000 
- Example2 1111 
- Example3 2222 

達成する方法はありますこの?

+0

はい、多くの方法があります。あなたはそれをあなた自身で試みましたか? – SiHa

答えて

5

はい、それはzipを探し、次のとおりです。

myList = ["Example", "Example2", "Example3"] 
mySecondList = ["0000", "1111", "2222"] 

for a, b in zip(myList, mySecondList): 
    print("- {} {}".format(a, b)) 
- Example 0000 
- Example2 1111 
- Example3 2222 

上記のリストは、同じ大きさを持っている場合、そうでなければ、依存itertoolsモジュールからizip_longestまたはzip_longestになります動作します使用しているPythonバージョンで

0

私はを使用することをお勧めしますあなたの質問は3210またはzip_longest()です。

しかし、built-inモジュール/機能を使用しないでください。 zip()と非常によく似た独自の「ハッキー」メソッドを作成することができます。ここで

は一例です:

def custom_zip(a, b, fill=None): 
    length = max(len(a), len(b)) 
    for k in range(length): 
     if k > len(a): 
      yield fill, b[k] 
     elif k > len(b): 
      yield a[k], fill 
     else: 
      yield a[k], b[k] 

a = ["Example", "Example2", "Example3"] 
b = ["0000", "1111", "2222"] 

for k, v in custom_zip(a,b): 
    print("- {} {}".format(k, v)) 

出力:

- Example 0000 
- Example2 1111 
- Example3 2222 

また、あなたがofficial documentationzip()の同等を見てみることができます。

関連する問題