Python

【Python初心者】数値型の3つの種類を覚えておこう

こんにちは(@t_kun_kamakiri)(‘◇’)ゞ

この記事ではPythonのデータの型の中の「数値型」について解説します。

まずデータの型についてですが、以下の種類があります。

  • 数値型
    • 整数
    • 浮動小数点
    • 複素数
  • 文字列
  • リスト型
  • 辞書型(ハッシュ)
  • タプル型
  • 集合型
  • 論理型

これらすべて完璧に使い方を覚える必要はないと思いますので、この記事では「これくらいは覚えておこう」というものをまとめておきます。

その中でも本記事では「数値型」の種類について解説します。

Pythonでどうやって数値型を扱うのか・・・・
その基本的なことをまとめておきました。

 

この記事の内容
  1. Pythonの数値型の型(3つの種類)の書き方に慣れる
  2. 数値型の演算方法
  3. データの型の変換

 

使用環境を示しておかないと混乱しそうなのでちゃんと書いておきます(^^)/
 

【Pythonの使用環境について】
Anaconda
Google Colaboratory
当ブログはこれをメインに使った計算結果です。

関連記事
 

 

☟書籍も紹介しておきます。
こちらの本がPython初心者が挫折することなく勉強できる本です。
(本記事のようのPython使用環境と異なりますが、とてもわかりやすいので全く問題ありません)

確かな力が身につくPython「超」入門 (確かな力が身につく「超」入門シリーズ)

確かな力が身につくPython「超」入門 (確かな力が身につく「超」入門シリーズ)

鎌田 正浩
2,728円(09/28 16:12時点)
発売日: 2016/03/16
Amazonの情報を掲載しています
 

 

スポンサーリンク

データの型がなぜ必要か?

 

カマキリ

どうしてデータに型あるのか考えたことがなかった・・・

データに型がない言語で変数を宣言するとどうなるでしょうか。
宣言された変数はどんな型のデータが入ってもいいように一番大きくメモリを用意しますよね。

つまり、メモリの無駄な消費を行わないためにデータの型が用意されています

数値型の3つ種類

 

では、ここからPythonを使って色々なデータの型を書いていきましょう(^^)/

数値型の中でも型が分かれています。

数値型は以下の3つを覚えておこう!

  1. 整数型
  2. 浮動小数点型
  3. 複素数型

 

以下がPythonのコードです。
※文字列も書いておきました(文字列については、後で説明します。)

Pythonは型の宣言が必要ないので、書き方だけで区別されます。

では、「型」が異なる者どうしの演算はどうなるでしょうか。

カマキリ

実践してみよう!

「型」どうしの演算

 

演算と言っても「足し算、引き算、掛け算、割り算・・・」などありますが、今回は足し算だけ確認します。

ここでは、以下の4つについて見ていきます。

  1. 「整数型」どうしの足し算
  2. 「整数型」と「浮動小数点型」の足し算
  3. 「整数型」と「複素数型」の足し算
  4. 「整数」と「文字列型」の足し算:(絶対にエラーになるが・・・)

 

各データを以下のように用意します。

 

そして以下で計算結果を見ていきます。

「整数型」どうしの足し算

【結果】

とりあえず、「整数型」どうしの足し算は「整数型」であると思いますが、念のために「型」を確認していきます。

確認方法は「type()」の中に変数を入れればよいです。

【結果】

👆こんな感じで「int」と返ってきました。
これは、「int型」(integer)であることを意味しているで、やはり「整数型」どうしの足し算は「整数型」であることがわかります。

では、どんどん確認していきます。

「整数型」と「浮動小数点型」の足し算

以降は、「足し算」と「型の確認」を一気にしていきます。

【結果】

「float」は「倍精度浮動小数点型」と呼ばれる「浮動小数点型」です。
浮動小数点の中にも、「単精度浮動小数点型」と「倍精度浮動小数点型」がありますがPythonは「倍精度浮動小数点型」しか対応していませんので注意が必要です。

「単精度」と「倍精度」の違いは、ざっくり言うと数字の取りえる桁数の違いです。
☟もう少し「float型」について勉強したい方はこちらをどうぞ!
float型【変数の型】とは

ここでは、「整数型」と「浮動小数点型」の足し算は「浮動小数点型」になることがわかりました。

「整数型」と「複素数型」の足し算

あまり使う機会がないかもしれませんが、複素数型の演算もやっておきます。

【結果】

こんな感じで、「整数型」と「複素数型」の足し算は「複素数型」になります。

「整数」と「文字列型」の足し算:(絶対にエラーになるが・・・)

【結果】

なにやらいっぱいエラーが出ています。

最後の文面を見るとタイプで「int」と「str」の「+(足し算)」はサポートしていない

と書いています。
これは「整数型」と「文字列」の足し算はできませんというエラーメッセージですね。

このように数値型と文字型は足すことができません。

足すことができないわけではないですが、基本的にはデータには型がありますっていうのは覚えておいて、異なる型どうしの演算は型を変えて行う必要があります。。

つまり、型を変えることで「数値型」と「文字列」の足し算が可能になります。

データの型を変換してみる

 

Pythonには型の宣言の必要が無いと言いましたが、異なる型に変えたい、異なる型どうしの演算をしたいという場合もあるので、ここではデータの型を変える記述について見ていきます。

ここでは、以下の4つについて見ていきます。

  1. 整数を浮動小数点に変換する
  2. 浮動小数点を整数型に変換する
  3. 整数を文字列に変換する
  4. 整数型を複素数型への変換

 

整数を浮動小数点に変換する

【結果】

浮動小数点型を整数型に変換する

【結果】

整数型を文字列に変換する

【結果】

a=50といっかい「整数型」にしておきながら、次の行で「b = str(a)」として文字列に変換しています。
 
「print(b,type(b))」と見ると50は’50’のように文字列に変換されているのがわかります。
だから「b+c」のような文字列どうしの足し算なのでエラーなく計算してくれたというわけです。
 

整数型を複素数型への変換

 

あまり機会がないかもしれませんが、複素数への変換についてもやっておきます。
 
 
【結果】

 

以上で、データの型の変換についてはおしまいです。

割ったときの商と余り

 

次は、例えば「50で割ったときの商」や「4で割ったときの余り」を計算する方法についてのお話です。

そんな場面に出くわすことあるのか?
って思いますが、あるんですよ。

その例をこちらで示しているので、良ければどうぞ(‘ω’)

こちらの記事もどうぞ

 

 

では、「商」と「余り」を計算してみましょう。
今回は「50÷4=12余り2」というのを計算してみます。

【結果】

ちゃんと「商」と「余り」の計算ができましたね。

整数同士の割り算の演算の注意

 

【結果】

割り切れる場合も割り切れない場合もどちらも「float」になっていることが確認できます。

 

復習

 

初心者にとってプログラミング言語の型というのを理解するのはとても難しいでしょう。
しかし、安心してください。 とても簡単です。

以下の質問に悩むか悩まないかを考えてください。

【質問】
1.5+5はいくらでしょう?
2.5+5.5はいくらでしょう?
3.5+イヌはいくらでしょう?
【答え】
1.10
2.10.5
3.??????

3番だけよくわかないですよね。
こんな感じです。
5や5.5は数値ですが、イヌは文字です。

つまり、プログラミング言語では数値と文字は区別しないといけません。

※ほとんどのプログラミング言語では変数を定義するときに、変数の型を定義する必要がありますがPythonではその必要はありません。

【プロフィール】

カマキリ
(^^)

大学の専攻は物性理論で、Fortranを使って数値計算をしていました。
CAEを用いた流体解析は興味がありOpenFOAMを使って勉強しています。

プロフィール記事はこちら

 

大学学部レベルの物理の解説をします 大学初学者で物理にお困りの方にわかりやすく解説します。

このブログでは主に大学以上の物理を勉強して記事にわかりやすくまとめていきます。

  • ・解析力学
  • ・流体力学
  • ・熱力学
  • ・量子統計
  • ・CAE解析(流体解析)
  • note
    noteで内容は主に「プログラミング言語」の勉強の進捗を日々書いています。また、「現在勉強中の内容」「日々思ったこと」も日記代わりに書き記しています。
  • youtube
    youtubeではオープンソースの流体解析、構造解析、1DCAEの操作方法などを動画にしています。
    (音声はありません_(._.)_)
  • Qiita
    Qiitaではプログラミング言語の基本的な内容をまとめています。