ここでは自分の勉強の復習もかねて、何回かにわたって、Pythonの使い方をまとめていきます(全部で何回分になるかは不明)。紹介するPythonは、Python3(2ではない)。また、OSは、macです。また、jupyter notebookを使っていきます。
Contents
データ型について
Pythonで使われる基本的なデータの種類は、「整数(integer)」「浮動小数点数(float)」「文字列(string)」「ブール値(boolean value)」の4種類です。
データ型 | 説明 | 例 |
整数 | 小数点がない数 | 1, 2, 3, 10, 100, -5, -8. -1000 |
浮動小数点数 | 小数点がある数 | 1.00, 3.14, 3.333・・・, -4.2256 |
文字列 | 文字の並び | abc, hello, world, あいうえお, ハロー, ワールド |
ブール値 | True(真), False(偽)のどちらかを取る値 | True, False |
データ型を調べてみる
「type()」という関数を用いると、その値が、どのデータ型なのかを教えてくれます。
上の例では、「3」「3.33」「'hello'」「True」という値に対し、type()関数を用いてデータ型を調べた結果、それぞれ、整数のデータ型を示す「int」、浮動小数点数のデータ型を示す「float」、文字列のデータ型を示す「str」、ブール値のデータ型を示す「bool」が返されています。
【注意】ここで、文字列で「hello」ではなく、「'hello'」と表示しているのは、「hello」と入力してしまうと、それを文字列ではなく変数として処理しようとします。文字列として処理されるためには、前後に、「'」または、「"」を入れる必要があります。('hello', または、"hello")
基本的に、同じデータ型同士で計算すると、その結果も同じデータ型になりますが、割り算は浮動小数点型になります。
上の例では、最初は、cは、a + b = 1 + 2 = 3より、「3」のデータ型である整数型を示す「int」が返されています。
次に、cが、a / b = 1 / 2 = 0.5 より、「0.5」のデータ型である浮動小数点型を示す「float」が返されています。
次に異なるデータ型で計算してみます。
ここでは、cは、「a + b (= 0.3 + 1) 」の式により、 1.3と定義 されているので、「1.3」のデータ型である浮動小数点型を示す「float」が返されています。
データ型の変換
データ型の変換に用いる関数
各種データ型を変換するには、関数を用います。
関数 | 説明 |
int() | 浮動小数点型の値や、ブール値、文字列(注1)を整数へ変換する関数。(注1:整数以外の文字列が指定された場合はエラー) |
float() | 整数やブール値、文字列(注2)を浮動小数点数へ変換する関数。(注2:浮動小数点数以外の文字列が指定された場合はエラー) |
str() | 数値やブール値を文字列へ変換する関数 |
bool() | 数字や文字列をブール値へ変換する関数 |
int()関数
int()関数を使った例を示します。
小数にint()関数を用いると、小数点以下は切り捨てられます。したがって、「3.14」は「3」が返されています。また、ブール値に対して、int()関数を用いるとTrueは1を、Falseは0を返します。文字列「-3」の場合は、整数として「-3」が返されますが、次の例のように、整数ではない文字列「Hello, World!」の場合は、エラーが返されます。
float()関数
float()関数を使った例を示します。
整数にfloat()関数を用いると、そのまま小数に変換されます。したがって、「3」は「3.0」が返されています。また、ブール値に対して、float()関数を用いるとTrueは1.0を、Falseは0.0を返します。文字列「3.14」の場合は、小数として「3.14」が返されますが、次の例のように、小数ではない文字列「Hello, World!」の場合は、エラーが返されます。
str()関数
str()関数を使った例を示します。
すべて、関数に与えられた値の前後に「'」が追加され、文字列に変換されていることがわかります。
bool()関数
bool()関数を使った例を示します。
「0」の整数、「0.0」の小数や、空の文字列では、「False」が返ってきます。それ以外であれば、「True」が返されます。
おわりに
今回は、整数、浮動小数点数、文字列、ブール値のデータ型について確認し、データ型を調べるtype()関数と、値をそれぞれのデータ型に変換するint()関数、float()関数、str()関数、bool()関数について確認しました。