Pythonにおけるデータの型について現役エンジニアが解説【初心者向け】

初心者向けにPythonにおけるデータの型について解説しています。ここでは整数型(int)と文字列型(str)の役割と使い方、それぞれへの変換方法について説明します。基本となるところなので仕組みを正しく理解しておきましょう。

TechAcademyマガジンは受講者数No.1のオンラインプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。

Pythonにおけるデータの型について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

文字列データや数値データを頻繁に扱う必要がある人はぜひ覚えておくと良いでしょう。プログラミング初心者期では、この型に関する違反のエラーに出くわすことが大変多いです。プログラム上で文字列として取り込んでしまった数字を整数として使用したい時などに役立つでしょう。

 

そもそもPythonについてよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

データの型について詳しく説明していくね!

大石ゆかり

お願いします!

目次

 

データの型とは

Pythonのデータ型には大きく分けて、数値を表す、整数型(int)と文字列を表す文字列型(str)があります。厳密にいうと、整数を表す型にはbool, float, complex(True/False、浮動小数点数、複素数)も存在します。

この記事では、整数型(int)と文字列型(str)について詳しく解説します。

 

[PR] Pythonで挫折しない学習方法を動画で公開中

型の使い方

型の使い方について解説します。Pythonでは、変数に整数型データや文字列型データを代入した段階で、型が決定します。

例えば、

a = 24

と代入すると、変数aは整数型データになります。

また、

b = "24"

と代入すると、変数bは文字列型データとなります。変数の型はtype()関数を使って確認することができます。

print(type(a))

実行結果はこのように返ってきます。

<class 'int'>

さらに、str()関数を使って整数型データを文字列型データに変換することもできます。

str(a)

反対に、文字列型データを整数型データに変換することができるのがint()関数。

int(b)

このように、文字列型データを後から整数型データに、整数型データを後から文字列型データに変換することができます。また、注意しなければならないこととして、文字列型データと整数型データの加算演算はできません。

c = 24 + "歳です"

上記のコードを実行するとこのようにエラーが出てしまいますので注意しましょう。

Traceback (most recent call last):
  File "Main.py", line 1, in <module>
  c = 24 + "歳です"
TypeError: unsupported operand type(s) for +: 'int' and 'str'

 

文字列型・整数型のデータを作成してみよう

それでは実際に文字列型、整数型のデータを作成してみましょう。

a = 24
b = "24"
c = "歳です。"
print(type(a))
print(type(b))

print(str(a)+c)

d = a + int(b)
print(d)
print (str(d) + c)

実行結果はこちらです。

<class 'int'>
<class 'str'>
24歳です。
48
48歳です。

整数型のaと文字列型のbはどちらも24ですが、データの型が違いました。

しかし、str()関数やint()関数を使うことで整数型と文字列型の変換がうまくでき、文字列を連結する演算や、整数を足し算する演算が可能になっていることがわかりますね。

 

まとめ

いかがでしたでしょうか。Pythonにおけるデータの型について理解できましたでしょうか。型を正しく扱うことができれば、プログラム上で文字列として取り込んでしまった数字を整数として使用するなど、柔軟にシステムを開発することができます。

正しく理解して活用しましょう。

 

監修してくれたメンター

メンター山崎

電機メーカー社員の組み込みハード、ソフトウェア系エンジニア。

新規製品のアプリケーション/アルゴリズムの提案や製品実装ソフトウェア実装、開発効率化スクリプトの作成などに従事する。
PythonやRuby, VBA, C言語, C++, shellスクリプト, ハードウェア記述言語(Verilog HDL)など多数の言語と日々奮闘中。

趣味は野球、ギター、スノーボード、ウェイトトレーニング、食べログ巡りなどこちらも多数奮闘中。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でもPythonを使った人工知能(AI)や機械学習の基礎を習得できるオンラインブートキャンプPython講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。