1.1. 変数とは?
Python では、変数とはデータを保存、変更、およびアクセスするために使用される オブジェクトに割り当てられた名前です。Pythonは動的型付け言語です。 つまり、変数の型は値が割り当てられたときに決定され、その型はプログラムの実行中に変わる可能性があります。
Pythonにおける変数の主なポイント:
1. 宣言と代入:
Pythonでは変数にメモリを予約するための宣言は不要です。変数に値を割り当てると、自動的にメモリが予約され、その型が決定されます。例えば、x = 10
は x
という名前の変数を作成し、値として 10
を割り当てます。
2. 名付け:
変数名は説明的で、Pythonの識別子ルールを守る必要があります。例えば、数字で始まらない、アンダースコア以外の特殊文字を含まない、など。
例:
name1 = "Alex" | name1 - 良い名前。 |
---|---|
user_age = 5 | user_age - 良い名前。 |
%city% = 7 | %city% - 悪い名前、特殊文字が含まれています。 |
1234qwerty = 1234 | 悪い名前 - 数字で始まっています。 |
3. 動的型付け:
先に述べたように、Pythonでは変数の型は実行時に決定されるため、柔軟で開発に便利です。プログラム中に型を変更する例: x = 10
では x
に数値を割り当て、x = "hello"
では x
に文字列を割り当てます。
例:
age = "Alexander" |
変数 age は文章「Alexander」を含む文字列の値を持ちます。
|
---|---|
age = 35 | 変数 age は数値 35 を持ちます。 |
age = "London" | 変数 age は文字列「London」を持ちます。 |
age = 3.14 | 変数 age は浮動小数点数 3.14 を持ちます。 |
4. 変数の参照的性質:
Pythonでは変数はオブジェクトへの参照です。つまり、変数に値を割り当てると、実際にはその値を持つオブジェクトへの参照が作成されます。例えば、変数 x
と y
が同じオブジェクトを参照している場合、x
を使って行われた変更は y
にも反映されます。どちらの変数も同じオブジェクトをメモリで参照しています。
5. 変数のスコープ:
変数のスコープは、プログラムのどの部分で変数が使用可能であるかを決定します。Pythonはローカル、グローバル、および(ネストされた関数のコンテキストにおける)ノンローカル変数をサポートしています。このトピックは詳細に学びますが、少し遅れて進めます。急がずに。
6. メモリ管理:
Pythonはガベージコレクタを使って、変数のメモリを自動的に管理し、未使用のメモリを追跡して解放します。
7. オブジェクトの不変性:
Pythonには文字列やタプルのような不変型データがあります。これらのデータの内容は作成後に変更できません。これらのデータを変更しようとする試みは、新しいオブジェクトを生成します。
8. 複数代入:
Pythonでは1行で複数の代入を行うことができます。例:
x = 1 | |
---|---|
y = 2 | x, y, z = 1, 2, 3 |
z = 3 |
1.2. データ型
Pythonはプログラム内のデータを保存および操作するために使用されるいくつかの基本的なデータ型をサポートしています。それには、int
, str
, float
, bool
などがあります。
int (整数)
int
データ型は、小数部分を持たない整数を表すために使用されます。正の値と負の値の両方を格納できます。例えば、x = 5 は変数 x に整数 5 を割り当てます。
str (文字列)
str
型はテキスト情報、つまり文字列を保存するために使用されます。Pythonでは文字列はシングルクォーテーションまたはダブルクォーテーションで囲まれます。例えば、name = "John" は変数 name に文字列 "John" を割り当てます。Pythonの文字列は連結や重複、そして様々なテキスト処理メソッドなど多くの操作をサポートしています。
float (浮動小数点数)
Pythonのfloat
型は、小数部分を含む数を表すために使用されます。これらの数は小数点を使用して表されます。例えば、pi = 3.14 は変数 pi に小数第2位まで丸めた円周率の値を割り当てます。
bool (ブール値)
ブールデータ型 bool
は、True (真)
または False (偽)
のいずれかの値をとります。条件文やループのような状況で、実行の制御によく使用されます。例えば、is_valid = True は変数 is_valid がブール値 True
を持つことを示します。
これらのデータ型は、Pythonでより複雑なデータ構造やアルゴリズムを構築するための基礎を成し、プログラマーがデータとロジックを効率的に管理することを可能にします。
1.3. 変数名
Pythonにおいて、変数名は単なるデータへの参照手段ではなく、コードをわかりやすく、メンテナンスしやすくするための鍵となります。適切な変数名の選択は、コードの理解とその後のデバッグを大幅に簡単にすることができますが、適切でない選択は混乱とエラーを引き起こす可能性があります。
Pythonにおける変数の命名の基本ルール:
分かりやすい名前を使用すること: 変数名はそれが含むデータを反映していると、コードを簡単に読み取ることができます。例えば、count
は何かを数えるために使用されている場合、x
よりも優れています。
スタイル標準を遵守する: Pythonの一般的な標準はPEP 8です。変数名にはアンダースコアを含む小文字を使用することを推奨しています(例: my_variable
)。
キーワードとの衝突を避ける: Pythonがその構文のために予約している単語を使用しないでください。例えば、if
, else
, class
, return
など。これは実行時エラーを引き起こす可能性があります。
小規模変数には短い名前を使用する: 小さなコードブロックで使用されるローカル変数には、i
や j
のような短い名前が適しており、コードをコンパクトにすることができます。
グローバル変数には長くて説明的な名前を使用する: プログラムの多くの部分で使用されるグローバル変数や定数は、その目的が明確になるように長くて説明的な名前を使用するべきです。
良い変数名の例:
user_age
の代わりに age
(コンテキストによって複数の年齢がある場合)
total_price
の代わりに total
(それが実際に価格であることを明確にします)
max_height
または min_height
の代わりに max_h
または min_h
特別なケース:
多くのアルゴリズム、特に数学や科学の分野では、単一文字の変数(例: x
, y
, z
)を使用することが一般的です。これは業界標準であり、コードの理解を高める場合に許容されます。
Pythonにおける変数名は、効果的で耐久性があり、メンテナンスが容易なコードを作成する上で重要な役割を果たします。だから、怠けずに良い名前を考えるようにしましょう。これによって、デバッグとメンテナンスが大幅に簡単になり、他のプログラマーにもコードが理解しやすくなります。
GO TO FULL VERSION