NameError: Python の名前が定義されていません
NameError
とは何か、そしてそれを修正する方法を学びます。 また、Python のターミナルではなくインタープリター内で Python を呼び出すときに、NameError: name 'python' is not defined
を修正する方法も学びます。
Python の NameError: name 'python' is not defined
を修正
コードに変数を記述したため、Python で NameError
が発生することがありますが、その変数が何であるかを Python に伝えていません。
これで、エラーを発生させる方法を示す Python スクリプトが作成されました。
name = "Bob"
fave_animal = "dog"
print("Hi", name, "Your favorite animal is a", fave_animal)
print("Your favorite film is", film)
このコードでは、name
と fave_animal
を定義していますが、film
を定義していないため、これを実行すると、name 'film' is not defined
エラーが発生します。 これは、Python が 'film'
が何であるかを知らないことを意味します。
NameError: name 'film' is not defined
film
を定義することでこれを修正でき、このスクリプトを実行することで修正できます。
film = "John Wick"
print("Your favorite film is", film)
出力:
Your favorite film is John Wick
エラーが発生するもう 1つの理由は、意図せずに変数 films
のように間違って記述した場合です。これを実行すると、同じエラーが発生します。
film = "John Wick"
print("Your favorite film is", films)
出力:
NameError: name 'films' is not defined
エラーを取得する別の方法は、どこかに文字列を定義したときに、引用符の中に単語を入れるのを忘れたと仮定することです。 私たちの場合、Python スクリプトでばかげた間違いをしており、このコードを実行すると同じエラーが発生します。
python
出力:
NameError: name 'Your' is not defined
ほとんどの初心者はこの種の間違いを犯し、解決策を見つけるのが難しい場合があります。
初心者がこのばかげた間違いを犯すもう 1つのことは、Python インタープリター内で python
を呼び出そうとすることです。インタープリター内でこのコマンドを実行すると、説明したのと同じエラーが発生します。
C:\Users\Dell>python
Python 3.9.1 (tags/v3.9.1:1e5d33e, Dec 7 2020, 17:08:21) [MSC v.1927 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> python
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'python' is not defined
CMD を実行して python
と入力すると、Python インタープリターが起動しますが、再度入力すると python
を変数名として解釈しようとし、その名前が定義されていないため、エラーが発生します。
CMD では、Python を起動するために再度呼び出す必要はありません。 Python インタープリターは既に起動しているので、python
を呼び出して起動する必要はありません。
Hello! I am Salman Bin Mehmood(Baum), a software developer and I help organizations, address complex problems. My expertise lies within back-end, data science and machine learning. I am a lifelong learner, currently working on metaverse, and enrolled in a course building an AI application with python. I love solving problems and developing bug-free software for people. I write content related to python and hot Technologies.
LinkedIn関連記事 - Python Error
- AttributeError の解決: 'list' オブジェクト属性 'append' は読み取り専用です
- AttributeError の解決: Python で 'Nonetype' オブジェクトに属性 'Group' がありません
- AttributeError: 'generator' オブジェクトに Python の 'next' 属性がありません
- AttributeError: 'numpy.ndarray' オブジェクトに Python の 'Append' 属性がありません
- AttributeError: Int オブジェクトに属性がありません
- AttributeError: Python で 'Dict' オブジェクトに属性 'Append' がありません