工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> Python

Python データ型マスター: 実践ガイド

Python データ型

このガイドでは、Pythonの主要データ型を歩いて回り、それらの仕組みと相互変換を解説します。

Pythonのデータ型

Pythonのすべての値はオブジェクトであり、各オブジェクトはその型を定義するクラスのインスタンスです。これらの型を理解することは、明確で効率的かつ信頼性の高いコードを書くために不可欠です。

以下では最も頻繁に使われるデータ型をカバーします:数値、リスト、タプル、文字列、セット、辞書。


Python 数値

Pythonの数値型にはint、float、complexがあります。type()で値のクラスを調べ、isinstance()でクラス階層への所属をテストできます。

a = 5
print(a, "is of type", type(a))
a = 2.0
print(a, "is of type", type(a))
a = 1+2j
print(a, "is complex number?", isinstance(1+2j, complex))

出力

5 is of type <class 'int'>
2.0 is of type <class 'float'>
(1+2j) is complex number? True

整数は利用可能メモリによってのみ制限される任意の大きさを持ちます。浮動小数点数は約15桁の精度で正確。例えば1は整数、1.0は浮動小数点数です。

複素数はx + yjの形式で、xが実部、yが虚部。サンプル値:

>>> a = 1234567890123456789
>>> a
1234567890123456789
>>> b = 0.1234567890123456789
>>> b
0.12345678901234568
>>> c = 1+2j
>>> c
(1+2j)

浮動小数点数bは精度制限に合わせて切り捨てられました。


Python リスト

リストは順序付きで変更可能なシーケンスで、任意の型の要素を含められます。角括弧で宣言し、要素はカンマで区切ります:

a = [1, 2.2, 'python']

スライシングで部分配列を取得。インデックスは0から開始:

a = [5,10,15,20,25,30,35,40]
print("a[2] = ", a[2])
print("a[0:3] = ", a[0:3])
print("a[5:] = ", a[5:])

出力

a[2] = 15
a[0:3] = [5, 10, 15]
a[5:] = [30, 35, 40]

リストは変更可能。要素の再代入が可能:

a = [1, 2, 3]
a[2] = 4
print(a)

出力

[1, 2, 4]

Python タプル

タプルは順序付きだが不変。データ保護に使われ、サイズが変わらないためリストよりわずかなパフォーマンス優位性があります。丸括弧で定義:

t = (5,'program', 1+3j)

スライシングは動作するが、再代入はエラー:

t = (5,'program', 1+3j)
print("t[1] = ", t[1])
print("t[0:3] = ", t[0:3])
# t[0] = 10
# would raise TypeError

出力

t[1] = program
t[0:3] = (5, 'program', (1+3j))

Python 文字列

文字列はUnicode文字の不変シーケンス。シングル/ダブルクォート、複数行にはトリプルクォートを使用。

s = "This is a string"
print(s)
s = '''A multiline string'''
print(s)

出力

This is a string
A multiline string

スライシングは動作するが、文字変更を試みるとエラー:

s = 'Hello world!'
print("s[4] = ", s[4])
print("s[6:11] = ", s[6:11])
# s[5] = 'd'
# would raise TypeError

出力

s[4] = o
s[6:11] = world

Python セット

セットは一意なアイテムの順序なしコレクション。波括弧で定義。重複を自動排除し、和集合・積集合などの集合演算をサポート。

a = {5,2,3,1,4}
print("a = ", a)
print(type(a))

出力

a = {1, 2, 3, 4, 5}
<class 'set'>

重複は自動削除:

a = {1,2,2,3,3,3}
print(a)

出力

{1, 2, 3}

セットは順序なしのため、インデックスアクセスとスライシングはサポートされません。


Python 辞書

辞書はキー・バリューペアを格納し、キーによる検索に高度に最適化されています。キーと値は任意のハッシュ可能な型。

d = {1:'value','key':2}
print(type(d))
print("d[1] = ", d[1])
print("d['key'] = ", d['key'])
# print("d[2] = ", d[2]) # KeyError

出力

<class 'dict'>
d[1] = value
d['key'] = 2

データ型間の変換

Pythonは組み込みコンストラクタで型変換を提供:int()、float()、str()など。floatからintへの変換はゼロ方向に切り捨て。

float(5) # 5.0
int(10.6) # 10
int(-10.6) # -10

文字列変換には互換性のある表現が必要:

float('2.5') # 2.5
str(25) # '25'
# int('1p') # ValueError

シーケンス間の相互変換:

set([1,2,3]) # {1, 2, 3}
tuple({5,6,7}) # (5, 6, 7)
list('hello') # ['h', 'e', 'l', 'l', 'o']

ペアのイテラブルから辞書を作成:

dict([[1,2],[3,4]]) # {1: 2, 3: 4}
dict([(3,26),(4,44)]) # {3: 26, 4: 44}

Python

  1. 5つのデータセンターモデルを解説:設計、ユースケース、事例
  2. 2021年の主要クラウドコンピューティングモデル8選
  3. データ侵害の8つの典型タイプ:実例と影響を徹底解説
  4. C# 変数とプリミティブデータ型:完全マスターガイド
  5. C++データ型完全ガイド:基本型、修飾子、ベストプラクティス
  6. C言語データ型完全解説:int、float、charなど
  7. C言語のデータ型完全ガイド:整数、浮動小数点、void型
  8. MATLABデータ型完全ガイド:15種類の基本型と変換・判定関数
  9. Python 型変換とキャスト: 包括的ガイド
  10. Python 演算子完全マスター: 包括的ガイド
  11. Python pass文完全マスター: 実践ガイド