Python 言語を学ぼうー文字表現編ー

本記事では Python 言語について勉強していきます。また本記事は前回の記事を読んでいることが前提となります。まだ読んでいない方は、必ずこちらのサイトを参考にしてください。

Python で記載したコードが実行されるまで

前回の記事でパソコン、プログラミングについて勉強したので、Python の勉強を開始します。

普通のプログラミング言語は、書かれたプログラム情報を機械語に変更します。機械語を実行することで何かしらの出力結果を得ることができます。

基本的にこれさえ理解しておけば問題ないですが、Pythonは機械語への変換をせずに、内部の仮想マシン上でコードを実行してしまいます。内容が難しくなりますので、本サイトでは言及しませんが、興味がある方はこちらのサイトを参考にしてください。

Pythonが動く仕組み

内部の仮想マシンが自動で数値、文字を認識するため、intなどの接頭語をつけなくてもコードが実行できてしまいます。

基本的にこれさえ理解しておけば問題ありませんが、Pythonは機械語への変換を行わず、代わりに内部の仮想マシン上でコードを実行します。これが原因で、Python は他言語と比較して、少し異なる挙動を示す場合があります。intなどの接頭語をつけずにもコードが実行できる点もその一種です。

本サイトでは、プログラミングスキル向上を目的としているため、Python特有の表現をできるだけ避けたコード記述を心がけます。(Python特有の内容については、その都度記載します。)

Python での文字表現

文字表現

前回の記事で、プログラミングには数値と文字で表現方法が分けられる、という話をしました。Python も例外ではなく、数値と文字の 2 種類を判別しなければなりません。また数値に関しては、詳細は省きますが、整数、小数点の数値(整数も含んでよい、この数値を浮動小数点数と呼ぶ)、複素数の 3 種類で分けられます。さらに、スイッチのオンオフという、パソコン元来の数値の表現方法があります。以上より、パソコンで表現できる文字のデータ型は 5 種類です。

  • str 型: 文字データ
  • int 型: 数値データ、整数を表現するデータ型
  • float 型: 数値データ、小数点
  • complex 型: 数値データ、複素数
  • bool 型: 論理型、0 が False、0以外(通常は1)が True を表現

Python で記載される文字表現

では、Python で実際に扱ってみましょう。本サイトでは Spyder を使用してコードを実行しています。適当なファイル名で保存してください。Spyder のインストールガイドは以下の記事を参考にしてください。

# str 型
strData: str = "1"

# int 型
intData: int = 1

# float 型
floatData: float = 1.1

# complex 型
complexData: complex = 1 + 1j


# bool 型, 例は True, False も可
boolData: bool = True

strData は数値の 1 が記載されていますが、 str 型で表現しているので文字データです。また、ダブルクォーテーション(“)で囲んでいると思いますが、この間が str 型として認識されます。

変数名の後に str や int と書いていますが、こちらは分かりやすくするために記載しているだけで、実際は記載しなくても Python はエラーを起こしません。ですが、「Python 言語を学ぼう」編では、データ型についてより意識させるため、変数定義の際、全てデータ型を記載します。

Python での四則演算

Python では数値同士であれば四則演算が、文字データでは足し算が可能です。四則演算は以下の記号で表現します。

  • +: 足し算
  • -: 引き算
  • *: 掛け算
  • /: 割り算

実際に確認してみましょう。以下の計算を行ってください。print は Python で使用できる関数です。詳しい説明は省略しますが、今は計算結果を表示できるということだけ覚えておいてください。

print("str の足し算")
print(strData + strData)
print("int と int の足し算")
print(intData + intData)
print("float と float の引き算")
print(floatData - floatData)
print("complex の掛け算")
print(complexData * complexData)
print("bool の割り算")
print(boolData / boolData)

数値同士の四則演算が、正しく行われていることを確認してください。また、文字同士の足し算ですが、以下の結果になったと思います。

11

プログラムでの文字データの足し算は文字の後に文字を追加する、という単純なものです。例えば、”Hello” + “!!!” だと、計算結果は “Hello!!!” となります。また、文字は足し算以外はエラーとなります。実際に以下のコードを実行して確認してみましょう。

print("1" * "1")

TypeError ~ と表示されていることが分かります。 Python では文法上の記載や、プログラミングが実行できないと、○○Error~ という表示が出てきます。Errorの説明については今後の記事で書きたいと考えております。

最後に

本記事のまとめです。

  • 基本的に、プログラムは記載した情報を機械語に変更することで実行される。
  • Pythonは仮想マシン上でコードを実行するため、他の言語にはない特徴がある。例えば、接頭語の省略などが可能である。
  • Pythonでは様々な文字表現方法があります。

お疲れさまでした。そして長文にお付き合いいただき、誠にありがとうございました。

[次の記事]

タイトルとURLをコピーしました