2016-05-02 9 views
0

私は同じ長さの2つのリストを圧縮しようとしていますが、私はいつも圧縮されたリストの代わりに "zip object at 0x0000000002A81548"というエラーを受け取ります。パイソン2 zipPython zip()2リスト

filename = input("Which file do you want to open?: \n") 

file = open("C:/"+ filename,'r') 


movielist = [] 
moviename = [] 
moviedate = [] 

for line in file: 
    line.strip() 
    name = re.search('name:(.*)',line) 
    date = re.search('date:(.*)',line) 

    if name: 
     titel = name.group(1) 
     moviename.append(titel) 
    if date: 
     datum = date.group(1) 
     moviedate.append(datum) 

print("Name of the list: ", moviename.pop(0)) 

movielist= zip(moviename,moviedate) 

print(movielist) 

print("Number of movies: " , len(moviename)) 
+2

http://stackoverflow.com/questions/31011631/python-2-3-object-of-type-zip-has-no-lenまたはhttp://stackoverflow.com/questions/の複製のようなサウンド18048310/len-error-for-zipping-in-python。 – alecxe

答えて

4
movielist= list(zip(moviename,moviedate)) 

リストを返し、上記必要とされません。 Python 3では、ジェネレータまたはitertools.izipに似た特別なレイジージップオブジェクトを返します。具体的にはlenを使用する必要があります。 mapについても同様です。

+0

ありがとう!出来た! –

+0

私はうれしいです:)答えがあなたの問題を解決したら、左側のチェックをクリックして、それを合格とマークします。 –

+0

あなたはこの答えを少し詳しく説明するべきです(例えば、python2.x 'zip'とpython3.x' zip'の違い)。 – mgilson

関連する問題