2011-03-04 133 views
0

所以我的代碼蟒蛇urllib.request.urlopen遞歸失敗

def constructGraph(self,url,doit=5): 
    if doit!=0: 
     m = urllib.request.urlopen(url) 
     print('test') 
     self.constructGraph('http://example.com',doit-1) 

但後來當我運行它,它只能運行在第一m = urllib.request.urlopen(url)只打印測試一次,即使它應該做兩次。 ..

,當我運行調試器,它甚至不會去打印(「測試」)線在第二遞歸和僅是退出

我做了什麼錯?

我使用python 3

+0

我沒有立即看到你的代碼有什麼問題。你可以發佈更多的類定義,或者你對constructGraph的初始調用看起來像什麼? – phooji 2011-03-04 02:06:25

+0

不知道它有什麼問題。嘗試打印'doit'和'm'的值,而不是'test'',可能會挖掘到'm'。 – Vamana 2011-03-06 18:16:22

回答

0

也許你一次只能打開一個請求。嘗試在urlopen調用之前放置打印語句。