Python-変数タイプ

変数は、値を格納するために予約されたメモリ位置に他なりません。これは、変数を作成するときに、メモリにいくらかのスペースを予約することを意味します。

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

変数への値の割り当て

Python変数は、メモリスペースを予約するために明示的な宣言を必要としません。変数に値を割り当てると、宣言が自動的に行われます。等号(=)は、変数に値を割り当てるために使用されます。

=演算子の左側のオペランドは変数の名前であり、=演算子の右側のオペランドは変数に格納されている値です。例-

#!/usr/bin/python

counter = 100          # An integer assignment
miles   = 1000.0       # A floating point
name    = "John"       # A string

print counter
print miles
print name

ここで、100、1000.0、および "John"は、それぞれcountermiles、およびname変数に割り当てられた値です。これにより、次の結果が生成されます-

100
1000.0
John

複数の割り当て

Pythonでは、単一の値を複数の変数に同時に割り当てることができます。例-

a = b = c = 1

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

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

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

標準データ型

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

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

  • Numbers
  • String
  • List
  • Tuple
  • Dictionary

Python番号

数値データ型は数値を格納します。数値オブジェクトに値を割り当てると、それらが作成されます。例-

var1 = 1
var2 = 10

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

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

delステートメントを使用して、1つまたは複数のオブジェクトを削除できます。例-

del var
del var_a, var_b

Pythonは4つの異なる数値タイプをサポートしています-

  • int(符号付き整数)
  • long(long整数、8進数および16進数で表すこともできます)
  • float(浮動小数点の実数値)
  • 複素数(複素数)

ここに数字のいくつかの例があります-

int 長いです 浮く 繁雑
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          # Prints complete string
print str[0]       # Prints first character of the string
print str[2:5]     # Prints characters starting from 3rd to 5th
print str[2:]      # Prints string starting from 3rd character
print str * 2      # Prints string two times
print str + "TEST" # Prints concatenated string

これにより、次の結果が生成されます-

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.2]
abcd
[786, 2.23]
[2.23, 'john', 70.2]
[123, 'john', 123, 'john']
['abcd', 786, 2.23, 'john', 70.2, 123, 'john']

Pythonタプル

タプルは、リストに似た別のシーケンスデータ型です。タプルは、コンマで区切られたいくつかの値で構成されます。ただし、リストとは異なり、タプルは括弧で囲まれています。

リストとタプルの主な違いは次のとおりです。リストは角かっこ([])で囲まれ、要素とサイズは変更できますが、タプルは括弧(())で囲まれ、更新できません。タプルは次のように考えることができますread-onlyリスト。例-

#!/usr/bin/python

tuple = ( 'abcd', 786 , 2.23, 'john', 70.2  )
tinytuple = (123, 'john')

print tuple               # Prints the complete tuple
print tuple[0]            # Prints first element of the tuple
print tuple[1:3]          # Prints elements of the tuple starting from 2nd till 3rd 
print tuple[2:]           # Prints elements of the tuple starting from 3rd element
print tinytuple * 2       # Prints the contents of the tuple twice
print tuple + tinytuple   # Prints concatenated tuples

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

('abcd', 786, 2.23, 'john', 70.2)
abcd
(786, 2.23)
(2.23, 'john', 70.2)
(123, 'john', 123, 'john')
('abcd', 786, 2.23, 'john', 70.2, 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']

辞書には、要素間の順序の概念がありません。要素が「故障している」と言うのは誤りです。それらは単に順序付けられていません。

データ型変換

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

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

シニア番号 機能と説明
1

int(x [,base])

xを整数に変換します。xが文字列の場合、baseはベースを指定します。

2

long(x [,base] )

xを長整数に変換します。xが文字列の場合、baseはベースを指定します。

3

float(x)

xを浮動小数点数に変換します。

4

complex(real [,imag])

複素数を作成します。

5

str(x)

オブジェクトxを文字列表現に変換します。

6

repr(x)

オブジェクトxを式文字列に変換します。

7

eval(str)

文字列を評価し、オブジェクトを返します。

8

tuple(s)

sをタプルに変換します。

9

list(s)

sをリストに変換します。

10

set(s)

sをセットに変換します。

11

dict(d)

辞書を作成します。dは、(キー、値)タプルのシーケンスである必要があります。

12

frozenset(s)

sをフリーズセットに変換します。

13

chr(x)

整数を文字に変換します。

14

unichr(x)

整数をUnicode文字に変換します。

15

ord(x)

単一の文字をその整数値に変換します。

16

hex(x)

整数を16進文字列に変換します。

17

oct(x)

整数を8進文字列に変換します。