2
請原諒我的措辭可憐的稱號,但這裏有一個更詳細的解釋:當我們將它們作爲變量傳遞時,我可以更改函數參數嗎?
我有一個函數,作爲參數需要被用來確定從數據庫中檢索數據的一些功能,例如:
def customer_data(customer_name, *args):
# initialize dictionary with ids
codata = dict([(data.__name__, []) for data in args])
codata['customer_observer_id'] = _customer_observer_ids(customer_name)
# add values to dictionary using function name as key
for data in args:
for coid in codata['customer_observer_id']:
codata[data.__name__].append(data(coid))
return codata
這使得調用該函數看起來像這樣:
:customer_data('customername', target_parts, source_group, ...)
這些功能之一是一個額外的參數定義
def polarization_value(customer_observer_id, timespan='day')
我想要的是一種巧妙地改變時間跨度變量的方法。一個明顯的方法是在customer_observer中包含一個關鍵字參數,並在被調用的函數名稱爲'polarization_value'時添加一個異常,但我有一種感覺,有更好的方法來做到這一點。
是啊,這是部分應用程序。 –
完美,謝謝! –