HOWTO · Python
AttributeError: Int オブジェクトに属性がありません
このチュートリアルでは、Python で int オブジェクトに属性エラーがないことについて説明します。
このページの内容
int データ型は、最も重要でプリミティブなデータ型の 1つであり、Python だけでなく、他のいくつかのプログラミング言語で整数を格納および表現するために使用されます。 int データ型は、小数点がない限り、正または負の整数を格納できます。
このチュートリアルでは、Python で int データ型を使用しているときに発生する可能性がある特定のエラーに焦点を当て、対処するソリューションを提供します。
Python の AttributeError: 'int' object has no attribute を修正
AttributeError は、Python コードで発生する可能性のある一般的なエラーの 1つです。 このチュートリアルでは、そのような AttributeError の 1つを扱います。これは、'int' オブジェクトに属性 'A' がありません。
ここで、A は、int オブジェクトで使用される任意の関数にすることができます。
サンプル コードに進み、このエラーを取り除く方法を学習する前に、このエラーが発生する理由を理解しましょう。
AttributeError: 'int' object has no attribute は、コード内で整数でアクセスしてはならない属性にアクセスしようとすると発生します。
この場合、属性を startswith() 関数と見なし、それを int データ型の変数と一緒に使用するコード例を考えてみましょう。
x = 16
print(type(x))
y = x.startswith("1")
print(y)
上記のコードは、次の出力を提供します。
Traceback (most recent call last):
File "/tmp/sessions/9a0e45726a00d027/main.py", line 3, in <module>
y = x.startswith('1')
AttributeError: 'int' object has no attribute 'startswith'
startswith() 関数は int データ型ではなく文字列データ型の属性であることがわかっています。このエラーの発生と、この場合の解決方法を理解するのは簡単です。
int データ型変数が str データ型に変換され、指定された startswith() 属性を処理する場合、上記のエラーを取り除くことができます。
次のコードは、int データ型の変数を str データ型に変換し、指定された startswith() 属性を処理します。
x = 16
print(type(x))
y = str(x).startswith("1")
print(y)
上記のコードは、次の出力を提供します。
<class 'int'>
True