Pythonでタプルでエラー「name 〜 is not defined」となる場合の原因と解決方法と注意点

Pythonのタプルを作って使う場合にエラーメッセージ「name '〜' is not defined」となる場合の原因と解決方法。タプルはコンマの有無が決定的に重要

今回は初めてのプログラミング学習として、Pythonでタプルを作るときのちょっとした注意点の解説です。

タプルを作って使おうとした場合にうまくいかず、「name 〜 is not defined」というエラーメッセージが出ることがあります。このときに何が原因か、どのように解決すべきか、そのちょっとした注意点を解説します。

まず結論から言いますと、「Pythonのタプルではコンマが重要」ということです。

空のタプルを作る方法

まず要素がなにもない空っぽのタプルを作ってみましょう。作り方は複数ありますが、今回は以下の方法にしました。


#①  空のタプル作成
tpl_one=()  
#  型を確認
type(tpl_one)  # 結果:<class 'tuple'>
#  表示
print(tpl_one)  # 結果:()

空のタプルであるtpl_oneを作成し、型を確認し、そして表示させました。それぞれの結果は上のコード中のコメントの通りです。

では次に中身の要素が1つだけあるタプルを作ってみましょう。

空じゃないタプルの作成は「コンマの有無」に注意

今回は要素として文字列appleを使います。タプルの「( )内部にコンマがあるかないか」で2つのパターンを用意しました。次のコードを見てください。

#②  カンマなしの場合
tpl_two=('apple')
#  型確認
type(tpl_two)  # 結果:class 'str'>
print(tpl_two)  # 結果:apple

#③ カンマありの場合
tpl_three=('apple', )
type(tpl_three)  # 結果:<class 'tuple'>
print(tpl_three)  # 結果:('apple',)

このコード中の#②と#③の場合の違いがわかるでしょうか。

上の結果を表にしてみました。


#②:カンマなし
#③:カンマあり
文字列(str)タプル(tuple)
表示結果apple(‘apple’, )

つまり、Pythonのタプルというのは、空のタプルを作る場合以外は、「カンマ」が必要となります。

たとえ今回のようにタプルの構成要素がたった1つであった場合でも、カンマがないとタプルになりません。

では、最後に空のタプルにコンマを使った場合にどうなるかを確認しておきましょう。

tpl_four=( , )
type(tpl_four)  #  結果:name 'tpl_four' is not defined
print(tpl_four)  #  結果:name 'tpl_four' is not defined

このようなタプルは未定義ということになって、エラーとなります。

以上、Pythonのタプルについてはコンマが決定的に重要であることがわかりました。初歩的すぎるものでちょっとしたことですが、注意したいですね。

もしみなさんがこれからのプログラミング学習や転職などに悩みがあるならば、現役エンジニアから学べるプログラミングスクールTechAcademy [テックアカデミー]でオンライン講座を受講するのも良いと思います。1人で悩みながら学習を進めるよりもわかりやすく、費やす時間も少なく合理的・効率的に学習できるからです。

Webマーケティングコース

Webアプリケーションコース

データサイエンスコース

機械学習の基礎が学べる「Pythonコース」

など各種の講座が用意されていますので、自分の未来に沿った講座が見つかります。無料で体験できるテックアカデミー無料体験も用意されていますのでお得に利用してみてください。

初心者におすすめプログラミングスクール