Pythonの変数入門:宣言方法と使い方を徹底解説
本記事では、Pythonにおける変数の作成方法と基本的な使い方について、初心者にもわかりやすく解説します。
Pythonの変数とは
変数(Variable)とは、メモリ上に格納されたオブジェクトへの参照を保存するための「名前が付けられた場所」のことです。プログラムの中でデータを扱う際の基本となる概念です。
Pythonで変数を作成する際には、以下の命名ルールを守る必要があります。
- 変数名は英字またはアンダースコア(_)で始める必要がある
- 変数名を数字で始めることはできない
- 変数名に使用できるのは英数字とアンダースコアのみ(A-z、0-9、_)
- 変数名は大文字・小文字が区別される(date、Date、DATEは3つの異なる変数として扱われる)
- 変数名の長さに制限はない
- Pythonの予約語(キーワード)を変数名として使用することはできない
Pythonの予約語(キーワード)一覧
以下はPythonで予約されているキーワードの一覧です。これらは変数名として使用できません。
False class finally is return
None continue for lambda try
True def from nonlocal while
and del global not with
as elif if or yield
pass else import assert
break except in raise
変数への値の代入方法
変数に値を代入するには、代入演算子 = を使用します。
有効な変数名と無効な変数名の例を以下に示します。
# 有効な変数名の例
name = "John"
error_404 = 404
_status_200 = "OK"
mySurname = "Doe"
SURNAME = "Doe"
surname2 = "Doe"
# 無効な変数名の例
200_OK = 200 # 数字で始まっている
class = "Math" # 予約語を使用している
error-500 = "Server Error" # ハイフンは使用不可
my var = "John" # スペースは使用不可
$myname = "John" # 記号は使用不可
ポイント:
Pythonでは、変数の型を事前に宣言する必要がありません。インタプリタが代入されたデータから自動的に型を判別してくれます。これはPythonの大きな特徴のひとつです。
複数の変数への同時代入
Pythonでは、1行で複数の変数にそれぞれ異なる値を代入することができます。
例:
ok, redirect, server_error = 200, 300, 500
print(ok)
print(redirect)
print(server_error)
出力結果:
200
300
500
また、複数の変数に同じ値を一度に代入することも可能です。
err_500 = err_501 = err_502 = "server_error"
print(err_500)
print(err_501)
print(err_502)
グローバル変数の扱い方
関数の外側で定義された変数は「グローバル変数」と呼ばれます。グローバル変数は、関数の内側でも外側でも使用できます。
status_ok = 200
def status_code():
print("Status code is ", status_ok)
status_code()
一方、関数内で同じ名前の変数を作成すると、その変数は関数内でのみ有効な「ローカル変数」となり、グローバル変数の値は宣言時のまま保持されます。
例:
status = 200
def status_code():
status = 401
print("Status code is ", status)
status_code()
print("Status code is ", status)
出力結果:
Status code is 401 # 1つ目の出力(ローカル変数)
Status code is 200 # 2つ目の出力(グローバル変数)
関数の中でグローバル変数の値を変更したい場合は、global キーワードを使用する必要があります。
例:
status = 200
def status_code():
global status
status = 401
print("Status code is ", status)
status_code()
print("Status code is ", status)
出力結果:
Status code is 401 # 1つ目の出力
Status code is 401 # 2つ目の出力(グローバル変数が更新された)
このように、global キーワードを付けることで、関数内からグローバル変数そのものを書き換えることが可能になります。ただし、グローバル変数の乱用はコードの可読性や保守性を下げる原因になるため、必要最小限にとどめるのが良い設計とされています。
-
PythonのTkinterでスレッドを使う方法|threadingモジュールによる非同期処理の基本
Tkinterでは、スレッド(Threading)を活用することで、複数の関数を同時に実行できます。これにより、アプリケーション内の処理を非同期で動かすことが可能になります。 Pythonでスレッドを使用するには、まずthreadingモジュールをインポートし、そのThreadクラスを継承した新しいクラスを定義します。そして、クラス内でrunメソッドをオーバーライドし、実行したい処理をその中に記述します。 つまり、スレッドを使えば複数の作業を並行して進めることができます。Tkinterアプリケーションでスレッドを実現する際は、Thread()関数を利用します。 ここでは、「一定時間スリープした
-
Pythonのrange()関数とは?基本構文から実践的な使い方まで徹底解説
プログラミング学習のチュートリアルでは、意外と語られることのない重要なポイントがあります。それは、実際の開発では「繰り返し処理」と「カウント処理」を大量に行う必要があるということです。そのため、本格的なプログラミング言語であれば、数値を繰り返し列挙するための仕組みが必ず用意されています。Pythonにおけるrange()シーケンス型は、まさにその代表的な手段の一つです。 この記事では、Pythonのrange()について詳しく解説し、実際のプログラムでの活用方法をご紹介します。 Pythonのrange()シーケンス型とは range()は関数のように見えますが、実際にはPython 3に組