2016-07-14 58 views
0

後迭代隨機數返回false在下面的代碼環路在python

import pyzipcode as pyzip 
location = [] 
for var in grouped_list_long_zip: 
    holder = pyzip.Pyzipcode.get(var[0][4], 'US', return_json=False) 
    location.append(holder['location']) 

grouped_list_long_zip是包含位置其中在每一子列表中的第4個索引是郵政編碼列表的列表的列表。使用這個和模塊pyzipcode,我想返回郵編的緯度和經度位置並將它們存儲在location中。我的問題是隨機數迭代後,函數將返回false並使holderbool類型。它失敗的最常見的迭代是第11次,但它也發生在其他迭代中。我不確定如何調試此問題。

編輯:

當代碼失敗var簡單地等於什麼grouped_lsit_long_zip等於在那個位置。

+0

從'var [0] [4]'結合'var in grouped_list_long_zip'判斷,grouped_list_long_zip似乎是一個列表清單([[[]]]) –

+0

是'holder'字典?哪個函數返回'False'? –

+0

函數'pyzip.Pyzipcode.get'返回一個字典,所以'holder'每次被聲明爲一個字典。我也假設'pyzip.Pyzipcode.get'返回false,但是,奇怪的是,如果我只是簡單地執行'print(pyzip.Pyzipcode.get(pyzip.Pyzipcode.get(var [0] [4 ],'US',return_json = False)'在它失敗的位置我沒有得到這個錯誤 – Jstuff

回答

1

我會修改這樣的代碼,以獲得對中斷執行的值的一些反饋。

import pyzipcode as pyzip 
location = [] 

for var in grouped_list_long_zip: 
    holder = pyzip.Pyzipcode.get(var[0][4], 'US', return_json=False) 
    if type(holder) == bool: 
     print(var[0]) 
    else: 
     location.append(holder['location']) 

你能做的就是包裹的東西在try-except塊簡單地忽略了問題的情況下,如果引發錯誤的另一件事。

+0

它等於'grouped_list_long_zip'在同一位置,我更新了問題以表明你是正確的,它是一個列表列表的列表 – Jstuff

+0

@Jstuff所以當'holder'突然變成'bool'類型時'var [0] [4]'的值沒有什麼特別之處嗎? –

+0

沒什麼特別的。 – Jstuff