str.isdecimal() 十進数字かどうか
最終更新:2026-09-22
str.isdecimal() 十進数字かどうか
str.isdecimal() は空でなく、各文字がすべて十進数字文字(Unicode Decimal)である場合に True を返す。
| カテゴリ | 文字列メソッド |
|---|---|
| 種類 | 組み込み型メソッド |
| Python バージョン | all |
📝 構文
str.isdecimal()
戻り値:bool. True if non-empty and every char is a decimal digit (Unicode Nd).
元のオブジェクトを変更するか:いいえ(新しいオブジェクトを返す)
▶ 例
下のコードを編集し「実行」をクリックすると、出力パネルに結果が表示されます:
実行結果:
True
False
False
💡 関連するケース
さらに多くのケースは近日公開予定です。
❓ よくある質問
Qisdecimal() と isdigit() の違いは何ですか?
Aisdecimal() は十進数字(Unicode カテゴリ Nd)のみ認識します:'²'.isdecimal() は False ですが '²'.isdigit() は True です。isdecimal() の方が厳格です。
Q中国語の数字文字はどうなりますか?
A'一二三'.isdecimal() は False です(中国語の数字文字は isnumeric() でのみ True になります)。
Q「int() に安全」のテストに使えますか?
A完全には使えません。'123' のような全角数字の .isdecimal() は True ですが、int('123') は ValueError を投げます。厳格に検証するには isascii() と組み合わせます。