python模組 - functools模組
functools模組介紹
functools用於高階函式:指那些作用於函式或者返回其他函式的函式。通常情況下,只要是可以被當做函式呼叫的物件就是這個模組的目標。(The functools module is for higher-order functions: functions that act on or return other functions. In general, any callable object can be
treated as a function for the purposes of this module.)
functools.partial函式
partial是針對函式起作用的,並且是部分的,函式中哪些東西可以拆成部分呢?
裝飾器是對函式進行包裝,算是對函式的整體進行處理(其實是對輸入和輸出)。
部分的話其實只有對引數進行部分處理了。怎麼部分處理的呢?
裝飾器是對函式進行包裝,算是對函式的整體進行處理(其實是對輸入和輸出)。
部分的話其實只有對引數進行部分處理了。怎麼部分處理的呢?
函式的大致意思就是提前給函式繫結幾個引數。
def say(name, age):
print name, age
func = functools.partial(say, age=5)
func('the5fire')
# 結果是: the5fire 5
print name, age
func = functools.partial(say, age=5)
func('the5fire')
# 結果是: the5fire 5
場景:有這樣的函式:get_useragent(request) 用來獲取使用者瀏覽器的ua資訊,但是這個函式又不是在主體函式(執行頁面渲染的函式)get時呼叫的,只在模板中的一個filter中呼叫的(可以理解是在模板渲染時呼叫的),而filter在執行的時候是不能新增引數的,要怎麼處理。
def get(self, request, *args, **kwargs):
context = {
'ua_filter': functools.partial(get_useragent, **{"request": request})
}
self.render('index.html', context)
context = {
'ua_filter': functools.partial(get_useragent, **{"request": request})
}
self.render('index.html', context)
/* 對應的大致頁面程式碼如下 */
user-agent: {% ua_filter %}
user-agent: {% ua_filter %}
相關文章
- Python functools 模組Python
- 每週一個 Python 模組 | functoolsPython
- python 模組:itsdangerous 模組Python
- Python模組:time模組Python
- urlparse模組(python模組)Python
- python模組-re模組Python
- python模組之collections模組Python
- Python 內建模組:os模組Python
- Python模組之urllib模組Python
- [Python模組學習] glob模組Python
- Python 模組Python
- python模組Python
- Python的defaultdict模組和namedtuple模組Python
- python–模組之random隨機數模組Pythonrandom隨機
- python–模組之os操作檔案模組Python
- Python中的模組--SSH相關模組Python
- Python中模組是什麼?Python有哪些模組?Python
- Python常用模組(random隨機模組&json序列化模組)Pythonrandom隨機JSON
- Python Execl模組Python
- Python webargs 模組PythonWeb
- python collections模組Python
- Python mongoHelper模組PythonGo
- Python pymsql模組PythonSQL
- Python模組(module)Python
- Python-模組Python
- python 模組fnmatchPython
- Python:requests模組Python
- python random模組Pythonrandom
- Python Re模組Python
- python:time模組Python
- python:模組0Python
- Python cmd模組Python
- python colorama模組Python
- python os模組Python
- Python OS 模組Python
- 【Python】模組 fileinputPython
- Python 常用模組Python
- Python - 模組包Python