##
3.5.1 `atexit` 例

次の簡単な例では、インポートされたときにモジュールがファイルからカウンタを初期化する方法を示しています。また、プログラムが終了したときにアプリケーションがこのモジュールを明示的に呼び出さなくても、自動的にカウンタの更新された値を保存する方法を示しています。

    try:
        _count = int(open("/tmp/counter").read())
    except IOError:
        _count = 0

    def incrcounter(n):
        global _count
        _count = _count + n

    def savecounter():
        open("/tmp/counter", "w").write("%d" % _count)

    import atexit
    atexit.register(savecounter)

`register()`に指定した位置パラメータとキーワードパラメータは、 登録した関数を呼び出す際に渡されます。

    def goodbye(name, adjective):
        print 'Goodbye, %s, it was %s to meet you.' % (name, adjective)

    import atexit
    atexit.register(goodbye, 'Donny', 'nice')

    # or:
    atexit.register(goodbye, adjective='nice', name='Donny')