Python で文字列に数字のみが含まれているかどうかを確認するにはどうすればよいですか? 質問する

Python で文字列に数字のみが含まれているかどうかを確認するにはどうすればよいですか? 質問する

文字列に数字のみが含まれているかどうかを確認するにはどうすればよいですか?

ここで試してみました。これを実現する最も簡単な方法を見てみたいと思います。

import string

def main():
    isbn = input("Enter your 10 digit ISBN number: ")
    if len(isbn) == 10 and string.digits == True:
        print ("Works")
    else:
        print("Error, 10 digit number was not inputted and/or letters were inputted.")
        main()

if __name__ == "__main__":
    main()
    input("Press enter to exit: ")

ベストアンサー1

isdigitオブジェクトに対してメソッドを使用する必要がありますstr:

if len(isbn) == 10 and isbn.isdigit():

からisdigitドキュメンテーション:

str.isdigit()

文字列内のすべての文字が数字であり、少なくとも 1 つの文字がある場合は True を返し、そうでない場合は False を返します。数字には、小数点文字と、互換性のある上付き文字などの特別な処理が必要な数字が含まれます。これには、Kharosthi 数のように、基数 10 の数字を形成するために使用できない数字が含まれます。正式には、数字は、プロパティ値が Numeric_Type=Digit または Numeric_Type=Decimal である文字です。

おすすめ記事