home changes contents help options

** 037:数値を表す文字列か調べる **

整数や実数に変換してみて、エラーになるかどうかで判断します。

 def check_numbertype(s):
    """
    文字列が整数か浮動小数点か文字列かを判別する
    """
    try:
        int(s)
        return 'integer'
    except ValueError:
        try:
            float(s)
            return 'float'
        except:
            return 'string'

 print check_numbertype('12')
 print check_numbertype('1.23')
 print check_numbertype('ab')
 integer
 float
 string