ページへ戻る
+ Links
印刷
Python/型の判定(type,isinstance)
の編集 ::
NJF Wiki
xpwiki
:
Python
/
型の判定(type,isinstance)
の編集
Python/型の判定(type,isinstance) の編集
詳細な入力項目を表示
ページタイトル
( 空白で自動設定 )
:
ページ並び順
( 0-9 小数可 標準:1 )
:
ページ別名
(複数は[
改行
]で区切る)
:
ページ内容:
Pythonでは型の判定にtypeやisinstanceを使います。 typeは厳密にその型を何かを判定するのに使います。 # -*- coding: utf-8 -*- testString = "test" utfTestString = u"テスト" print type(testString) print type(utfTestString) print type(testString) == str print type(utfTestString) == str 結果 <type 'str'> <type 'unicode'> True False ただし、typeによる判定は、継承したクラスもFalseにしてしまいます。 そのため、せっかくスーパークラスと同じように使えるようにクラスを継承したのに、そのクラスが同じ処理で使えなくなってしまい、あまり使い勝手は良くありません。 これを回避するためには、継承まで含めて型チェックするisinstanceを使います。 先ほどの例で言うとunicodeとstrは同じbasestringを継承しているので、 print isinstance(testString, basestring) print isinstance(utfTestString, basestring) 結果 True True となり、isinstanceは両方ともTrueになります。 基本的に型チェックはisinstanceを使った方が便利です。
編集の要約:
Q & A 認証:
ページ更新時は次の質問にお答えください。(プレビュー時は必要ありません)
Q:
「大阪」の読みがな?(ひらがなで)
A:
お名前:
タイムスタンプを変更しない
テキスト整形のルールを表示する
添付ファイル
: