動機
Pythonに限らず動的型付けな言語は変数を扱うときに型に気をつける必要があります。いままでは割とざーっと作ってしまっていたので型の扱いはKnownでやっていたのですが、ソースを公開したりしているので多少気をつけていこうかなと思いました。
方法
typesをimportします。
下記に一覧をメモしておきます。たいてい<型名>Typeな感じです。
型 | 定義された名前 |
---|---|
None | NoneType |
Boolean | BooleanType |
整数 | IntType |
バイト文字列 | StringType |
Unicode | UnicodeType |
文字列(Byte & Unicode) | StringTypes |
リスト | ListType |
辞書 | DictType, DictionaryType |
関数 | FunctionType, LambdaType |
ジェネレータ | GeneratorType |
クラス | ClassType |
インスタンス | InstanceType |
イディオム
しかしながら、直接type関数を使うのもスマートではないんで通常は下記のようにisinstance関数を使いいます。
import types isinstance(arg0, unicode) isinstance(arg1, class1)