【Python 入門】変数の基本を初学者向けにわかりやすく解説!

こんにちは、機械学習の講師をしている尾宮です!

本記事では Python における変数の基本を解説しています。抑えておきたいポイントをサンプルコードとセットで紹介!

変数について理解を深めたい方の参考になれば幸いです。

実行環境

変数とは?

Python 入門 変数 図

変数とは、数値や文字列などの値を格納できる名前が付いた入れ物です。変数に値を格納したり、更新したりすることで、計算結果を一時的に保持できます。

変数の構文
変数 = 値

MEMO

変数の名前は、変数名といいます!

変数に値を代入する方法

変数に値を代入するときは、= の記号を使います。サンプルコードは以下の通りです。

ipynb ファイル
# 数値 3 を代入
a = 3

# 文字列「Hello, World!」を代入
b = 'Hello, World!'

# 数値 100 を再代入
a = 100

サンプルコードのように、変数 a は、入れ物であるため、再代入すると、値が変わります

また、文字列を変数に格納する際は、'(シングルコーテーション)、もしくは "(ダブルコーテーション)で囲みましょう。

MEMO
Python の文法における は、数学的な意味である (等しい)とは異なり、代入を意味します!

変数の値を確認する方法

Google Colab で、変数に代入した値を確認する方法は2つあります。

  • 変数をセルに記述し、実行
  • print(変数) 関数を実行

サンプルコードは以下の通りです。

ipynb ファイル
# 数値 3 を代入
a = 3
a
# 実行結果
# 3

# 数値 100 を再代入
a = 100
print(a)
# 実行結果
# 100

MEMO
print(変数) のように Python には予め多くの関数が定義されています。

そのような関数を組み込み関数 (built-in function) といいます。

注意

実は、変数を実行した時と print(変数) を実行した時では、挙動が異なるケースがあります

詳細については、下記事をご覧ください。
参考 2. Python 入門 2.3. エスケープシーケンス — ディープラーニング入門Chainer チュートリアル

変数名の決め方

変数名は基本的に自由に決定できます。しかし、他の方々や未来の自分が理解しやすいように、わかりやすい英語、かつ英単語をベースに変数名を付けるのが一般的です。

  • ○(英単語):age
  • △(ローマ字):nenrei

また、アルファベットの大文字と小文字は区別されます。以下、サンプルコードです。

ipynb ファイル
a = 1
A = 'kikagaku'

print(a)
# 実行結果
# 1

print(A)
# 実行結果
# kikagaku

MEMO
Python で英単語を複数組み合わせて変数名にしたい時は、スネークケースで命名するのが一般的です。

スネークケースとは dog_name のように、単語は全て小文字、かつ単語と単語を _(アンダースコア)で繋げる命名規則になります

詳細は Python コードのスタイルガイドがまとめられている PEP: 8 をご覧ください!
参考 はじめに — pep8-ja 1.0 ドキュメントPEP: 8 公式

不適切な変数名

ただし、エラーが出る変数名もあります。以下、NG 集です。

  • 変数名の頭文字が数字のとき
  • _(アンダースコア)以外の記号を使用しているとき
  • 予約語(Python の文法上、すでに意味がある単語)を使用しているとき

まず、変数名の頭文字が数字のとき、エラーが出力されます。
例えば、ab12 という変数名は大丈夫ですが、12ab999 は頭文字が数字なので、エラーとなります

サンプルコード
# OK
ab12 = 'kikagaku'
print(ab12)
# 実行結果
kikagaku

# NG
12ab = 'kikagaku'
# SyntaxError: invalid syntax

# NG
999 = 'kikagaku'
# SyntaxError: can't assign to literal

また、_ 以外の記号は変数名に使用できないので、注意しましょう!

サンプルコード
# NG
*a = 100
# SyntaxError: starred assignment target must be in a list or tuple

b- = 30
# SyntaxError: invalid syntax

そして、変数名として予約語も使用できません。予約語とは、Python の文法上、すでに意味を持つ単語です。例えば forif などが挙げられます。

その他、予約語を確認したい方は、公式をご覧ください!
参考 2. 字句解析Python 3.9.4 ドキュメント

サンプルコード
for = 1
# SyntaxError: invalid syntax

if = 'kikagaku'
# SyntaxError: invalid syntax

最後に

本記事では Python の基本となる変数について解説しました。以下、まとめになります。

  • 変数とは、名前のついた入れ物
  • 変数の値を確認する方法は、変数名を最後のセルに記述し実行 or print(変数) を実行
  • 変数名の決め方には、基本的なルールあり

変数はプログラミングを行う上で、ほぼ必ず使用しますので、しっかりと理解しておきましょう!

もし忘れてしまったら、本記事を思い出して再度復習してみてください。

Python 学習している方々のお力添えになれば幸いです!

こちらの記事もオススメ

まずは無料で学びたい方・最速で学びたい方へ

まずは無料で学びたい方: Python&機械学習入門コースがおすすめ

Python&機械学習入門コース

AI・機械学習を学び始めるならまずはここから!経産省の Web サイトでも紹介されているわかりやすいと評判の Python&機械学習入門コースが無料で受けられます!
さらにステップアップした脱ブラックボックスコースや、IT パスポートをはじめとした資格取得を目指すコースもなんと無料です!

無料で学ぶ

最速で学びたい方:キカガクの長期コースがおすすめ

一生学び放題

続々と転職・キャリアアップに成功中!受講生ファーストのサポートが人気のポイントです!

AI・機械学習・データサイエンスといえばキカガク!
非常に需要が高まっている最先端スキルを「今のうちに」習得しませんか?

無料説明会を週 2 開催しています。毎月受講生の定員がございますので確認はお早めに!

説明会ではこんなことをお話します!
  • 国も企業も育成に力を入れている先端 IT 人材とは
  • キカガクの研修実績
  • 長期コースでの学び方、できるようになること
  • 料金・給付金について
  • 質疑応答

参考リンク

参考 Python 3.9.2 ドキュメント

参考 Chainer チュートリアル