sqlite3にはリスト型は存在しないため、例えばintegerのリストを格納したい場合はstr()して;(セミコロン)区切りの文字列にjoin()して格納、取り出すときはsplit()してint()するという操作が必要となる。 sqlite3モジュールにはこれらの操作を予め登録し必要に応じて自動で実行する仕組みが存在している。 これによりリスト要素の型が全て一致していることがわかっているのであれば、変換関数をregister_adapter()とregister_converter()を使って登録することでリストをシームレスに扱うことができる。 以下の例ではtesttableにIntListという型を定義してregister_adapter()とregister_converter()を使いpythonのデータ型との変換方法を登録している。 connectするときのdetect_type