⑤Python変数の型

スポンサーリンク

本当にわからないとこがあった場合一人では解決できません。
『teratail』とはエンジニア特化型のQ&Aサイトです。 すべてのエンジニアさんが抱えている悩みを共有して 解決するための質問サイトです
無料なのでまずは登録して使ってみてください。メールアドレスだけで登録可能です ----------------------------------------------------------------------------------------

Python変数の型

変数は、値を格納するために予約されたメモリ位置(ハコ)にすぎません。これは、変数を作成するときにメモリ内にある程度のスペースを確保することを意味します。

変数のデータ型に基づいて、インタープリタはメモリを割り当て、予約メモリに格納できるものを指定します。したがって、変数に異なるデータ型を割り当てることにより、これらの変数に整数、小数点または文字を格納します。

変数への値の代入

Python変数は、メモリ空間を確保するために明示的に宣言する必要はありません。宣言は、変数に値を代入すると自動的に行われます。等号(=)は、変数に値を割り当てるために使用されます。

=演算子の左側のオペランドは変数の名前で、=演算子の右側のオペランドは変数に格納された値です。例えば ​​-

#!/usr/bin/python

counter = 1000          # An integer assignment
miles   = 1000.0       # A floating point
name    = "TOM"       # A string

print counter
print miles
print name

ここで、1000,1000.0および “TOM”はそれぞれcounter、mile、およびname変数に割り当てられた値です。このようにプリントされましたか?

1000
1000.0
TOM



複数の文字の割り当て

Pythonでは、1つの値を複数の変数に同時に割り当てることができます。例えば ​​-

a = b = c = 1

ここでは、整数オブジェクトが値1で作成され、3つの変数すべてが同じメモリ位置に割り当てられます。複数のオブジェクトに複数の変数を割り当てることもできます。例えば ​​-

a,b,c = 1,2,"TOM"

ここでは、値1と2の2つの整数オブジェクトがそれぞれ変数aとbに割り当てられ、値「TOM」を持つ1つの文字列オブジェクトが変数cに割り当てることができます。

a = 1 b = 2 c = TOM

標準データ型

メモリに格納されるデータは、多くの種類があります。たとえば、年齢は数値として格納され、その人の住所は英数字で格納されます。Pythonには、可能な操作を定義するために使用されるさまざまな標準データ型と、それぞれの格納方式があります。

Pythonには5つの標準データ型があります。

  • 数字
  • 文字列
  • リスト
  • タプル
  • dictionaliy

Pythonの番号

数値データ型は数値を格納します。Numberオブジェクトは、値を代入すると作成されます。例えば ​​-

var1 = 1
var2 = 20

また、delステートメントを使用して数値オブジェクトへの参照を削除することもできます。delステートメントの構文は次のとおりです。

del var1[,var2[,var3[....,varN]]]]

delステートメントを使用すると、単一のオブジェクトまたは複数のオブジェクトを削除できます。例えば ​​-

del var
del var_a, var_b

Pythonは4つの異なる数値型をサポートしています –

  • int(符号付き整数)
  • long(長い整数、8進数と16進数で表すこともできます)
  • float(浮動小数点実数)
  • Complex(複素数)

数字の例をいくつか挙げます –

int long float Complex
10 51924361L 0.0 3.14j
100 -0x19323L 15.20 45.j
-786 0122L -21.9 9.322e-36j
080 0xDEFABCECBDAECBFBAEl 32.3 + e18 .876j
-0490 535633629843L -90。 -.6545 + 0J
-0x260 -052318172735L -32.54e100 3e + 26J
0x69 -4721885298529L 70.2-E12 4.53e-7j
  • Pythonでは、小文字のlをlongで使うことができますが、数字1との混同を避けるため大文字のLだけを使うことをお勧めします。Pythonは大文字のLを持つ長い整数を表示します。
  • 複素数は、x + yjで示される実数の浮動小数点数の順序付きペアで構成されます。ここで、xとyは実数、jは虚数単位です。

Pythonの文字列

Pythonの文字列は、引用符で囲まれた連続する文字セットとして識別されます。Pythonでは、一重引用符または二重引用符のいずれかを使用できます。文字列のサブセットはスライス演算子([]と[:])を使用して取得できます。インデックスは文字列の先頭で0から始まり、最後に-1から始まります。

プラス(+)記号は文字列連結演算子で、アスタリスク(*)は繰り返し演算子です。例えば ​​-

#!/usr/bin/python

str = 'Hello World!'

print str          # 全部出力
print str[0]       # 最初の一文字
print str[2:5]     # 3~5番目の文字
print str[2:]      # 3文字目から
print str * 2      # 2回表示
print str + "TEST" # 対象の文字+TEST

これにより、次の通りになります。

Hello World!
H
llo
llo World!
Hello World!Hello World!
Hello World!TEST

Pythonリスト

リストは、Pythonの複合データ型の中で最も汎用性の高いものです。リストには、コンマで区切られ、角括弧([])で囲まれた項目が含まれています。ある程度は、リストはCの配列と似ています。それらの違いの1つは、リストに属するすべてのアイテムが異なるデータ型である可能性があることです。

リストに格納された値には、スライス演算子([]と[:])を使用してアクセスできます。インデックスはリストの先頭で0から始まり、-1を終えるように処理されます。プラス(+)記号はリスト連結演算子で、アスタリスク(*)は反復演算子です。例えば ​​-

#!/usr/bin/python

list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
tinylist = [123, 'john']

print list          # Prints complete list
print list[0]       # Prints first element of the list
print list[1:3]     # Prints elements starting from 2nd till 3rd 
print list[2:]      # Prints elements starting from 3rd element
print tinylist * 2  # Prints list two times
print list + tinylist # Prints concatenated lists

これにより、次の結果が得られます。

['abcd', 786, 2.23, 'john', 70.200000000000003]
abcd
[786, 2.23]
[2.23, 'john', 70.200000000000003]
[123, 'john', 123, 'john']
['abcd', 786, 2.23, 'john', 70.200000000000003, 123, 'john']

Pythonタプル

タプルは、リストに類似した別のシーケンスデータ型です。タプルは、コンマで区切られた複数の値で構成されます。リストとは異なり、タプルはカッコで囲まれています。

リストとタプルの主な違いは次のとおりです。リストはカッコ([])で囲まれ、要素とサイズは変更できますが、タプルはカッコ(()で囲まれて更新できません。タプルは読み取り専用リストと考えることができます。たとえば –

#!/usr/bin/python

Alist = ( 'abcd', 786 , 2.23, 'john', 70.2  )
Blist = (123, 'john')

print Alist           # 通常通り変換される
print Alist[0]        # リスト内の最初の文字のみ
print Alist[1:3]      # リスト内の2~3番目の文字のみ 
print Aliste[2:]       # 3番目から
print Blist * 2        # 二回繰り返す
print Alist + Blist # Alist + tinytuple リスト両方あらわす

これはつぎのようになります

('abcd', 786, 2.23, 'john', 70.200000000000003)
abcd
(786, 2.23)
(2.23, 'john', 70.200000000000003)
(123, 'john', 123, 'john')
('abcd', 786, 2.23, 'john', 70.200000000000003, 123, 'john')

次のコードは、タプルを更新しようとしたため無効です。タプルは許可されていません。同様のケースがリストで可能です –

#!/usr/bin/python

tuple = ( 'abcd', 786 , 2.23, 'john', 70.2  )
list = [ 'abcd', 786 , 2.23, 'john', 70.2  ]
tuple[2] = 1000    # Invalid syntax with tuple
list[2] = 1000     # Valid syntax with list

Python辞書

Pythonの辞書は、ハッシュテーブル型のようなものです。これらは、Perlで見つかった連想配列やハッシュのように機能し、キーと値のペアで構成されます。ディクショナリキーはほとんどすべてのPython型ですが、通常は数字または文字列です。一方、値には任意のPythonオブジェクトを使用できます。

辞書は中括弧({})で囲まれており、値には大括弧([])を使用して値を割り当ててアクセスできます。例えば ​​-

#!/usr/bin/python

dict = {}
dict['one'] = "This is one"
dict[2]     = "This is two"

tinydict = {'name': 'john','code':6734, 'dept': 'sales'}


print dict['one']       # Prints value for 'one' key
print dict[2]           # Prints value for 2 key
print tinydict          # Prints complete dictionary
print tinydict.keys()   # Prints all the keys
print tinydict.values() # Prints all the values

これにより、次の結果が得られます。

This is one
This is two
{'dept': 'sales', 'code': 6734, 'name': 'john'}
['dept', 'code', 'name']
['sales', 6734, 'john']

辞書には要素間の順序の概念がありません。要素が「順不同」であると言うのは間違いです。彼らは単純に順序付けられていない。

データ型変換

場合によっては、組み込み型間の変換を実行する必要がある場合があります。型間を変換するには、単に型名を関数として使用します。

あるデータ型から別のデータ型への変換を実行する組み込み関数がいくつかあります。これらの関数は、変換された値を表す新しいオブジェクトを返します。

関数 説明
int(x [、base]) xを整数に変換します。baseは、xが文字列の場合はベースを指定します。
long(x [、base]) xを長整数に変換します。baseは、xが文字列の場合はベースを指定します。
float(x) xを浮動小数点数に変換します。
complex(real [,imag]) 複素数を作成します。
str(x) オブジェクトxを文字列表現に変換します。
repr(x) オブジェクトxを式文字列に変換します。
eval(str) 文字列を評価してオブジェクトを返します。
tuple(s) sをタプルに変換します。
list(s) sをリストに変換します。
set(s) sをセットに変換します。
dict(d) 辞書を作成します。dは(キー、値)タプルのシーケンスでなければなりません。
frozenset(s) sをフリーズセットに変換します。
chr(x) 整数を文字に変換します。
unichr(x) 整数をUnicode文字に変換します。
ord(x) 単一の文字をその整数値に変換します。
hex(x) 整数を16進文字列に変換します。
oct(x) 整数を8進文字列に変換します。




前のページ④Pythonの基本構成

次のページ⑥Pythonの基本演算子

スポンサーリンク

プログラミングは独学からは挫折の可能性が高いです。まずは無料体験ができる
コードキャンプが本当におすすめ。無料体験でわからないところを聞きましょう。
転職補助つき。カリキュラム終了後に転職紹介をしてくれます。