LoginSignup
1
0

More than 1 year has passed since last update.

WindowsによるPython入門 #02: 変数

Last updated at Posted at 2023-01-08

はじめに

今回は第二回目として、変数を解説します。

YouTube動画

WindowsによるPython入門 (第二回) 変数

変数とは

Python の変数は、「値を参照するもの」です。
下図の左のイメージではなく、右のイメージが正解です。
変数 a が整数値 10 を保持しているのではなく、整数値 10 を変数 a が指し示しています。
よく、「Python の変数は箱ではなく、ラベルである」と例えられます。
変数が参照しているのは正確に言えば、「値」ではないのですが、詳細は後の回で再度解説します。

variable_image.PNG

具体例を見てみます。
変数 a に整数値 1 を代入します。この時に、変数 a が定義されます。a に 2 を足します。式の結果として、1 + 2 で 3 が返ります。
次に、変数 a に文字列 "neko" を代入します。変数 b に "inu" を代入します。a と空白と b を足すと、文字列 'neko inu' が返ります。

>>> a = 1
>>> a + 2
3
>>> a = "neko"
>>> b = "inu"
>>> a +  " " + b
'neko inu'

また、定義していない変数を使用するとエラーになります。

>>> c
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'c' is not defined

変数の型に関して

次に、変数の型に関して見てみます。
型を確認するには、type() 関数を使用します。
a に 1 を代入します。type() 関数を使用して、変数 a の型を調べると int (整数型) が返ります。
a に "neko" を代入します。type() で調べると、str (文字列型) が返ります。
ここで、「型」の情報を持っているのは、「変数」 a ではなく、「値」の方です。つまり、type(a) で調べているのは、変数 a が指し示す値の型を確認している事になります。

>>> a = 1
>>> type(a)
<class 'int'>
>>>
>>> a = "neko"
>>> type(a)
<class 'str'>

変数の命名規則

変数名として以下のものが利用可能です。

  • アルファベット (a-z, A-Z)
  • 数字 (0-9)
  • アンダースコア (_)
  • ユニコード文字

以下、公式ドキュメントです。

2.3. 識別子 (identifier) およびキーワード (keyword)

厳密に言えば、アルファベットや数字やアンダースコアもユニコード文字です。
但し、ユニコード文字は、バージョン管理システムなど他のアプリで不具合を起こすケースがありますので、推奨しません。
また、変数名の文字列の長さとして長さ制限はありません。

さらに、以下は変数名として使用出来ません。

  • 数字で始まる変数名
  • 予約語を変数名とする

具体的に確認します。
以下は、OK です。

a = 1
var1 = 2
num = 3
abcdefghijklmnopqrstuvwxyz0123456789 = 4  # 長い変数名
π = 3.14                                  # ユニコード文字を含む
文字 = "テスト1"                           # ユニコード文字を含む
a文字 = "テスト2"                          # ユニコード文字を含む

以下は、NG です。エラーになります。

1num = 1  # 数字で始まっている
if = 2    # if が予約語
for = 3   # for が予約語

また、以下の変数名を使用してもエラーにはなりませんが、使用が推奨されません。
アンダースコアで始まる変数名は特殊な場合に使用されます。

  • アンダースコア 1 つで始まる変数
  • アンダースコア 2 つで始まる変数
  • ビルトイン関数名 (予め定義されている関数)
_var = 1   # アンダースコア 1 つで始まる
__var = 2  # アンダースコア 2 つで始まる
sum = 3    # sum がビルトイン関数名
id = 4     # id がビルトイン関数名

おわりに

以上、変数のまとめでした。
次回は、具体的な型に関して見ていきます。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0