データ型と変換

PythonPythonIntermediate
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

前回の実験では、Python の基本を学びました。今回の実験では、Python の基本的なデータ型とそれらの間の変換方法を学びます。

到達目標

  • データ型
  • type() 関数
  • 型変換

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python/BasicConceptsGroup -.-> python/variables_data_types("Variables and Data Types") python/BasicConceptsGroup -.-> python/numeric_types("Numeric Types") python/BasicConceptsGroup -.-> python/strings("Strings") python/BasicConceptsGroup -.-> python/booleans("Booleans") python/BasicConceptsGroup -.-> python/type_conversion("Type Conversion") subgraph Lab Skills python/variables_data_types -.-> lab-290726{{"データ型と変換"}} python/numeric_types -.-> lab-290726{{"データ型と変換"}} python/strings -.-> lab-290726{{"データ型と変換"}} python/booleans -.-> lab-290726{{"データ型と変換"}} python/type_conversion -.-> lab-290726{{"データ型と変換"}} end

データ型

データ型はプログラミング言語の構築要素であり、Python にはいくつかの基本型が用意されています。Python インタプリタを使ってそれらを調べてみましょう。

ターミナルで python3 と入力して Python インタプリタを開きましょう。

Python インタプリタのターミナルウィンドウ

Python の主なデータ型には整数、浮動小数点数、ブール値、文字列があります。type() 関数は値の型を識別するのに役立ち、渡された値の型を出力します。

文字列

文字列は、ダブルクォートまたはシングルクォートで囲まれた文字のシーケンスです。

>>> print("Hello World")
Hello World
>>> print('Hello World')
Hello World
>>> type("Hello World")
<class 'str'>               ## 文字列であることを意味します

数値

Python の数値は整数または浮動小数点数です。整数は整数で、浮動小数点数は小数点がある数です。たとえば、42 は整数で、3.14 は浮動小数点数です。

>>> print(42)
42
>>> print(3.14)
3.14
>>> type(42)
<class 'int'>              ## 整数であることを意味します
>>> type(3.14)
<class 'float'>            ## 浮動小数点数であることを意味します

ブール値

ブール値は True または False のどちらかの値です。比較の結果を表すのによく使われます。たとえば、1 < 2True で、1 > 2False です。

>>> print(1 < 2)
True
>>> print(1 > 2)
False
>>> type(True)
<class 'bool'>            ## ブール値であることを意味します

Python のデータ型を理解することは、多様な値を扱い、それらの特性に合わせた操作を行うために不可欠です。

型変換

Python では、型変換とは変数のデータ型を変更することを指します。これは、特定のデータ型に固有の操作を行う場合や、変数が特定の型を持つことを保証する際に役立ちます。

明示的な型変換

明示的な型変換または型キャストは、組み込み関数を使って行われます。

  • int(x): x を整数に変換します。
  • float(x): x を浮動小数点数に変換します。
  • str(x): x を文字列に変換します。
  • bool(x): x をブール値に変換します。
>>> x = 10.5
>>> int_x = int(x)      ## 明示的に整数に変換
>>> str_x = str(x)      ## 明示的に文字列に変換
>>> bool_x = bool(x)    ## 明示的にブール値に変換

>>> print(int_x)
10
>>> print(str_x)
10.5
>>> print(bool_x)
True

ここでは、浮動小数点数の x をそれぞれの変換関数を使って明示的に整数、文字列、ブール値に変換しています。

暗黙的な型変換

暗黙的な型変換または型強制は、Python が式の中で異なる型のオペランドを遭遇したときに自動的に起こります。演算を行う前に、それらを共通の型に変換しようとします。

>>> x = 10           ## 整数
>>> y = 3.14         ## 浮動小数点数
>>> result = x + y   ## x が暗黙的に浮動小数点数に変換
>>> print(result)
13.14

ここでは、加算の前に整数の x が暗黙的に浮動小数点数に変換されます。

型変換エラー

すべての変換が有効なわけではありません。互換性のない型を変換しようとするとエラーが発生する場合があります。

>>> x = input()
i
>>> type(x)
<class 'str'>           ## デフォルトでは、`input()` はすべての入力を文字列として扱います。
>>> int_x = int(x)      ## エラー: 文字列を整数に変換できません

データの損失も考慮する必要があります。型の間で変換すると、精度や情報の損失が生じる場合があります。

>>> x = 3.14
>>> int_x = int(x)      ## データ損失:小数部分が切り捨てられます
>>> print(int_x)
3

まとめ

おめでとうございます!この実験を完了しました。

この実験で学んだことは以下の通りです。

  • Python の基本的なデータ型
  • type() 関数
  • 型変換