TypeError を解決する: Python では整数が必要です

MD Aminul Islam 2023年6月21日
  1. Python で TypeError が発生する仕組み
  2. TypeError: 整数が必要です を解決する方法
TypeError を解決する: Python では整数が必要です

Python でのコード作成中に発生するもう 1つの最も一般的なエラーは、TypeError です。 Python では例外です。

操作で不適切なデータ型のオブジェクトを使用すると、このエラーが発生します。

この記事では、Python で TypeError を取得する方法を示します。 また、トピックをより簡単にするために、必要な例と説明を使用してトピックについて説明します。

Python で TypeError が発生する仕組み

すでに説明したように、このエラーの原因は、操作で不適切なデータ型を使用したことです。 以下の Python プログラムを作成したとします。

num = list(str(345678))
for i in num:
    print(chr(i))

上記の例を実行しようとすると、次のようなエラーが発生します。

Traceback (most recent call last):
  File "<string>", line 5, in <module>
TypeError: an integer is required (got type str)

上記の例の問題は、関数 chr() の行 print(chr(i)) で互換性のないデータ型を渡したことにあります。

同じエラーを生成する別の例を見てみましょう。

この例では、2つの変数に対して除算演算を実行します。 この目的のための Python コードは以下のようになります。

MyInt = 45
MyInt2 = "5"
Result = MyInt / MyInt2
print("Result is : ", Result)

上記の例では、整数型変数を、この演算と互換性のない文字列型変数で除算しています。 したがって、この例を実行すると、次のようなエラーが発生します。

Traceback (most recent call last):
  File "<string>", line 3, in <module>
TypeError: unsupported operand type(s) for /: 'int' and 'str'

TypeError: 整数が必要です を解決する方法

このエラーを解決するには、データ型を修正する必要があります。 最初の例では、次のようにコードを修正できます。

num = list(str(345678))
for i in num:
    print(i)

ここで、データ型が操作と互換性がない行を修正しただけで、プログラムの別の部分は同じままであることがわかります。

最初の例を修正すると、以下のような出力が得られます。

3
4
5
6
7
8

では、2 番目の例を解いてみましょう。 2 番目の例を修正するには、以下のように 2 番目の変数から二重引用符を削除する必要があります。

MyInt = 45
MyInt2 = 5
Result = MyInt / MyInt2
print("Result is : ", Result)

そして、エラーが解決されたことがわかり、以下の出力が得られます。

Result is :  9.0

ここで説明するコマンドとプログラムは、Python プログラミング言語で記述されていることに注意してください。

著者: MD Aminul Islam
MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn

関連記事 - Python TypeError

関連記事 - Python Error