Pythonで使える変数の種類

2021/01/06Python

PythonはJavaやC言語と異なり変数に変数宣言や型の宣言は不要です。

動的に変数の型は決定されます。

なので、変数は使うときに値を入れて宣言すれば良いことになります。

i = 10

Pythonで使える変数の種類

Pythonでは「数値」「小数」「文字列」「2進数」「8進数」「16進数」「Bool」「リスト」「辞書」「タプル」などが使えます。

数値の変数

数値の変数は初期化、もしくは代入時に数値を指定します。

#数値
i = 10
print( "iの中身は{}です。".format( i ))
print( "iの型は{}です。".format(  type( i )))

実行結果は

iの中身は10です。
iの型は<class 'int'>です。

になります。

※Python2では「long」の値を保持する変数がありましたが、Python3ではintがその役目を負っています。

小数の変数

小数の変数は初期化、もしくは代入時に小数を指定します。

#小数
i = 3.14
print( "iの中身は{}です。".format( i ))
print( "iの型は{}です。".format(  type( i )))

実行結果は

iの中身は3.14です。
iの型は<class 'float'>です。

になります。

文字列の変数

文字列の変数は初期化、もしくは代入時に文字列を指定します。

#文字列
i = "ABC"
print( "iの中身は{}です。".format( i ))
print( "iの型は{}です。".format(  type( i )))

実行結果は

iの中身はABCです。
iの型は<class 'str'>です。

になります。

2進数の変数

2進数の変数は初期化、もしくは代入時に2進数を指定します。

2進数は「0b」を先頭につけて表現します。

#2進数
i = 0b101
print( "iの中身は{}です。".format( i ))
print( "iの型は{}です。".format(  type( i )))

実行結果は

iの中身は5です。
iの型は<class 'int'>です。

になります。
変数としてはintになります。

8進数の変数

8進数の変数は初期化、もしくは代入時に8進数を指定します。

8進数は「0o」を先頭につけて表現します。

#8進数
i = 0o664
print( "iの中身は{}です。".format( i ))
print( "iの型は{}です。".format(  type( i )))

実行結果は

iの中身は436です。
iの型は<class 'int'>です。

になります。

変数としてはintになります。

16進数の変数

16進数の変数は初期化、もしくは代入時に16進数を指定します。

16進数は「0x」を先頭につけて表現します。

#16進数
i = 0x0A
print( "iの中身は{}です。".format( i ))
print( "iの型は{}です。".format(  type( i )))

実行結果は

iの中身は10です。
iの型は<class 'int'>です。

になります。

変数としてはintになります。

Boolの変数

Boolの変数は初期化、もしくは代入時にBoolを指定します。

#Bool
i = True
print( "iの中身は{}です。".format( i ))
print( "iの型は{}です。".format(  type( i )))

実行結果は

iの中身はTrueです。
iの型は<class 'bool'>です。

になります。

変数としてはintになります。

リストの変数

リストの変数は初期化、もしくは代入時にリストを指定します。

初期化する際は「[ ]」で「,」で区切って指定します。

リストの各要素は0相対のインデックスで取得し、リストの長さはlen()で求めることができます。

#リスト
i = [ "abc", "123", "+*=-", "あいう", "123" ]
print( "iの中身は{}です。".format( i ))
print( "i[1]の中身は{}です。".format( i[ 1 ]))
print( "iの長さは{}です。".format( len( i )))
print( "iの型は{}です。".format(  type( i )))

実行結果は

iの中身は['abc', '123', '+*=-', 'あいう', '123']です。
i[1]の中身は123です。
iの長さは5です。
iの型は<class 'list'>です。

になります。

辞書の変数

辞書の変数は初期化、もしくは代入時に辞書を指定します。

辞書は「{ }」で囲み内容を「キー名:値」と「:」でつないだものを指定します・

#辞書
i = { "名前":"トラスト太郎", "年齢":30, "入社年月日":"2000/04/01", "年齢":40 }
print( "iの中身は{}です。".format( i ) )
print( "iの型は{}です。".format( type( i )) )

実行結果は

iの中身は{'名前': 'トラスト太郎', '年齢': 40, '入社年月日': '2000/04/01'}です。
iの型は<class 'dict'>です。

各キーで要素を取り出すには「[]」内にキー名を記述するかget()を使います。

#辞書
i = { "名前":"トラスト太郎", "年齢":30, "入社年月日":"2000/04/01", "年齢":40 }
print( i[ "名前" ])
print( i.get( "名前" ))
トラスト太郎
トラスト太郎

キーを追加したりキーの値を変更する際は直接キーを指定します。

#辞書
i = { "名前":"トラスト太郎", "年齢":30, "入社年月日":"2000/04/01", "年齢":40 }
print( i )
i[ "年齢" ] = 50               #キーを直接指定すると上書き
i[ "体重" ] = 65               #存在しないキーを接指定すると追加
print( i )
{'名前': 'トラスト太郎', '年齢': 40, '入社年月日': '2000/04/01'}
{'名前': 'トラスト太郎', '年齢': 50, '入社年月日': '2000/04/01', '体重': 65}

setdefaultメソッドは辞書内にすでに存在するキーの場合は何もせず、キーが存在しない時のみ追加してくれます。

#辞書
i = { "名前":"トラスト太郎", "年齢":30, "入社年月日":"2000/04/01", "年齢":40 }
print( i )
i.setdefault( "身長", 180 )    #存在しないは追加する
i.setdefault( "年齢", 50 )     #すでに存在するキーは上書きしない
print( i )
{'名前': 'トラスト太郎', '年齢': 40, '入社年月日': '2000/04/01'}
{'名前': 'トラスト太郎', '年齢': 40, '入社年月日': '2000/04/01', '身長': 180}

「年齢」は変更されず、「身長」が追加されています。

辞書内のキーすべてを取得するにはkeys()を使います。

#辞書
i = { "名前":"トラスト太郎", "年齢":30, "入社年月日":"2000/04/01", "年齢":40 }
print( i.keys() )              #辞書内のすべてにキーを取得

dict_keys(['名前', '年齢', '入社年月日'])

タプルの変数

タプルは、リストや辞書型といった複数の要素を管理するデータ型です。

特徴として値の追加、更新、削除はできません。

要素を取り出す場合は「 [] 」でインデックスを指定して取り出します。

#タプル
i = ("123", 1, "A", 'b')
print( "iの中身は{}です。".format( i ) )
print( "i[1]の中身は{}です。".format( i[1] ) )
print( "iの型は{}です。".format( type( i )) )
iの中身は('123', 1, 'A', 'b')です。
i[1]の中身は1です。
iの型は<class 'tuple'>です。

タプルの要素を変更しようすると

#タプル
i = ("123", 1, "A", 'b')
i[ 1 ]=2
Traceback (most recent call last):
  File "main.py", line 3, in <module>
    i[ 1 ]=2
TypeError: 'tuple' object does not support item assignment

とエラーが発生します。


株式会社システムトラスト

人材募集中です。

システムトラストでは、システムエンジニア、プログラマーなどを随時募集中です。気軽にご相談ください。

お問合せ