@deprecatedというデコレータがあれば、 ## そろそろ削除したい関数があるとき @deprecated def unsupportedfunc(): nanika ## foo から bar に関数名を変えるとき def bar(): nanika foo = deprecated(bar) とできて便利です。 このdecoratorの実装例が、Cookbookに載っていました <http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/391367> Cookbookのコメント欄にもありますが、stacklevelを設定することで、deprecatedな関数を呼んだのがどこかを調べることができます。 warnings.warn("Call to deprecated function %s." % func.__name__
![Pythonで@deprecatedというデコレータを用意する : DSAS開発者の部屋](https://cdn-ak-scissors.b.st-hatena.com/image/square/da78a05937633f7a2b4b2219826151c370cd607b/height=288;version=1;width=512/https%3A%2F%2Fparts.blog.livedoor.jp%2Fimg%2Fusr%2Fcmn%2Fogp_image%2Flivedoor.png)