Bir API'yi çağırmak için Python requests
kitaplığını kullanıyorum ve yaptığım her isteğe bir argüman (&t=abcd
) eklemek istiyorum.Python isteklerini kullanarak tüm çağrıların url'sine bir argüman pythonically nasıl eklenir
import requests
def callTheApi(url):
return requests.get(url, params={'t': 'abcd'})
ama nedense belki bir dekoratör falan kullanarak, bunu yapmak için daha temiz ve daha pythonic yol olduğunu fikrim yok: Tabii bir fonksiyonu böyle yapabilirsiniz. Kimse nasıl biliyor mu?
Eğer 'kabul functools.partial', ya da sadece mı Basit bir sarıcı işlevi? – jonrsharpe
Yani başka param parazitleri de olabilir mi? – schwobaseggl
Elbette, 'requests.get = my_decorator (requests.get)' ifadesini yeniden atayabilirsiniz, ancak sorunuzdan örnek almak çok daha mantıklı. Standart kütüphaneyi de-factolamak için başka bir işlevi yeniden bağlamak, bir kod okuyan herkesi yanıltacak ve onları yanlış yönlendirecektir. Her şeyden önce - açık, örtük olmaktan iyidir. İkincisi, istekleri kullanan ve bu ekstra parametreyi gerektirmeyen herhangi bir ek kod sadece kırılacaktır. –