python中property裝飾器,迭代器,生成器,http請求中的post和put的區別,URL和URI, RESTfulAPI

python property() 函數:
@property裝飾器就是負責把一個方法變成屬性來進行調用的結構,實現既可以檢查參數,又可以以點的形式進行調用類中的方法。

迭代器:
可以使用 for .. in .. 語法進行遍歷的語法叫做一個迭代器
當你建立了一個列表,你可以逐項地讀取這個列表,這個列表叫做一個可迭代對象


生成器:
生成器是可以迭代的,但是你 只可以讀取它一次 ,因爲它並不把所有的值放在內存中,它是實時地生成數據。
如果一個函數中包含了yield關鍵字,那麼這個函數就不是一個普通的函數,而是一個生成器(generator),  生成器是一種一邊循環一邊計算的機制
要創建一個generator,有很多種方法。第一種方法很簡單,只要把一個列表生成式的[]改成(),就創建了一個generator:
g = (x * x for x in range(10))
可以通過next()方法查看生成器的內容,也可以通過for循環來迭代它, generator保存的是算法,每次調用next(),就計算出下一個元素的值,直到計算到最後一個元素,沒有更多的元素時,拋出StopIteration的錯誤
https://pyzh.readthedocs.io/en/latest/the-python-yield-keyword-explained.html
https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/00138681965108490cb4c13182e472f8d87830f13be6e88000


http請求中post和put的區別:
如果一個方法(API)重複執行多次,產生的效果是一樣的,那它就是idempotent的
假如我們發送兩個http://superblogging/blogs/post/Sample請求,服務器端是什麼樣的行爲?如果產生了兩個博客帖子,那就說明這個服務不是idempotent的,因爲多次使用產生了不同的效果;如果後一個請求把第一個請求覆蓋掉了,那這個服務就是idempotent的。前一種情況,應該使用POST方法,後一種情況,應該使用PUT方法, post是發送請求, put也是發送請求,但是put的後一個請求會把前一個請求覆蓋掉。
https://my.oschina.net/u/1263964/blog/268932


URI:Uniform Resource Identifier,統一資源標識符
URL:Uniform Resource Location統一資源定位符
https://www.jianshu.com/p/ba15d066f777


RESTful API:
http://www.ruanyifeng.com/blog/2014/05/restful_api.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章