Pythonの変数には文字型や数値型といった様々なデータ型が存在する

Pythonの変数には文字型や数値型といった様々なデータ型が存在する。C言語などでは、値を代入する前にデータ型を事前に定義する必要があるが、Pythonでは自動的にデータ型が決定される。この自動的にデータ型が決定される仕組みを「動的型付け」と呼ぶ。動的型付けの仕組みとして、次の式で変数"d1" は数値型に。変数"d2" は文字型として扱われることになる。

a = 1

b = "Hallo world"

print(a, b)

実行結果

1 Hallo world

 

つまり、Pythonが動的型付け言語であるため、初期値「1」と「Hallow」という値をPython自身が何型であるかを判断することになる。次のサンプルコードの結果は51となる。

a = 1

b = 50

print(a+b)

実行結果

51

 

一方で、次のように記述すると、Pythonは変数"a"と変数"b"を文字列とみなし、加算ではなく「結合」することで、結果は「150」となる。

a = "1"

b = "50"

print(a+b)

実行結果

150

 

しかし、次のコードのように数値型と文字型では、データの型が異なるので、演算も結合もできずにエラーとなる。

a = 1       # 数値型

b = "2"     # 文字型

print(a+b)

実行結果

TypeError: unsupported operand type(s) for +: 'int' and 'str'

 

変数内のデータを削除するには、次のコードのように「del」を使用するが、変数内データの削除を行うことで、メモリが解放され、ptint()で表示させようとすると型が不明であることからエラーとなる。

dat = 10

del dat

print(dat)

実行結果

NameError: name 'dat' is not defined


このブログの人気の投稿

長岡まつり大花火大会2026年8月2・3日(日・月)

排泄ケアに関する問診票(課題整理のためのチェックリスト)

AIによる高血圧管理スマートフォンアプリ