2014-06-17 27 views
0

首先讓我爲可能可怕的問題標題道歉,但它遲到了,搜索沒有取得任何關於如何更恰當地使用它的結果。Python在類初始化使用混淆中請求庫的使用

我今天在這個有趣的代碼跌跌撞撞基本上下載udemy視頻爲你(可以在這裏找到:https://github.com/gaganpreet/udemy-dl/blob/master/udemy-dl.py) 的代碼是給我更多的還是不太清楚程序流的條件,但我不明白的是什麼恰恰是在20/21行的類啓動器內發生的,以及這對於代碼的運行至關重要。

我希望能夠在正確的方向上有所幫助,因爲我不明白「requests.Session()」在做什麼,它在我看來就像它創建時的類的實例有self.session值分配給requests.Session(),但isnt Session()是一個類的構造函數?

回答

2

是的,requests.Session()是對構造函數的調用。

有一個在requests庫,獨立於在您鏈接的代碼中定義的Session類中定義的Session類,它是requests版本的Session這是在構造函數構造線20-21 。

這是可以理解的混淆,因爲代碼和它調用的庫之間存在名稱重用,這通過前綴requests解決。

由於Huu Ngyuyen的評論如下,關於namespaces的文檔應該可以幫助您更好地理解正在發生的事情。

+0

'namespaces'上的官方教程[文檔](https://docs.python.org/2/tutorial/classes.html#python-scopes-and-namespaces)也應該有所幫助。 – huu

+0

謝謝@HuuNguyen和merlin2011的快速和簡潔的回覆。考慮解決這個問題。時間做一些閱讀:) – Orbital