プログラミングを習得するためには
・条件分岐文
・繰り返し文
・関数
の4つを理解するのが最初の課題です。
今回は1つ目の変数について、演習用プログラムのソースコードを使ってそれを実行しながら解説します。
1.演習用プログラムのダウンロード
演習用プログラム( practice02.py )をダウンロードします。
ダウンロードファイルは テキストファイルになっているので、エクスプローラーを使って拡張子を .txt から .py に変更します。
practice02.py を Python をインストールしたフォルダ(今回は C:\Python)に置きます。
2.ソースコードの表示
メモ帳を使って、演習用プログラム( practice02.py )を開きます。

practice02.py
3.Python の変数について
変数には4つのデータ型があります。
データ型 説明 int 整数 float 浮動小数点数 str 文字列 bool ブール値
データ型ごとに解説します。
① 変数に整数、浮動小数点数を代入する
まずは、コマンドプロンプト で practice02.py を実行します。
プログラムを実行する方法は、こちらの記事『ファイルに保存されたプログラムの実行』を参照します。
以下のように表示されます。
C:\Users\kotablog>python "C:\Python\practice02.py" 30 45.5
01 # -*- coding: utf-8 -*-
02 """
03 演習プログラム2
04
05 変数の基礎
06
07 """
08 import sys # モジュールのインポート
09
10 # 整数(int)を変数に入れる
11 age = 30
12 print(age)
13
14 # 浮動小数点数(float)を変数に入れる
15 weight = 45.5
16 print(weight)
17
18 #終了1
19 sys.exit()
11行目の age = 30 は、「 age の値は 30 である」ではなく、プログラミングでは、「 age という変数に 30 を入れる(代入する)」という意味になります。
そして12行目の print(age) でコマンドプロンプトに表示されます。
15行目の weight = 45.5 では、小数点を持つ数値を 変数 weight に代入しています。
② 計算結果を変数に代入する
ソースコード #終了1 の1行下の sys.exit() の先頭に「 # 」を入れてコメントにします。
Ctrl キーを押しながら、 S キーを押して、ソースコードを上書き保存します。
コマンドプロンプトで F3 キーを押して、 Enter キーを押下します。
以下のように表示されます。
C:\Users\kotablog>python "C:\Python\practice02.py" 30 45.5 3 5 75.5
21 # 計算結果を変数に入れる
22 a = 1 + 2
23 print(a)
24
25 b = 2
26 x = a + b
27 print(x)
28
29 # 整数(int)と浮動小数点数(float)の計算
30 y = age + weight
31 print(y)
32
33 #終了2
34 sys.exit()
22行目の a = 1 + 2 は数値を計算した結果を 変数a に代入しています。
26行目の x = a + b は変数と変数との結果を 変数x に代入しています。
30行目の y = age + weight は整数値( 30 )と小数点を持つ値( 45.5 )を計算した結果を 変数y に代入しています。
③ 文字列を変数に代入する
ソースコード #終了2 の1行下の sys.exit() の先頭に「 # 」を入れてコメントにします。
Ctrl キーを押しながら、 S キーを押して、ソースコードを上書き保存します。
コマンドプロンプトで F3 キーを押して、 Enter キーを押下します。
以下のように表示されます。
C:\Users\kotablog>python "C:\Python\practice02.py" 30 45.5 3 5 75.5 こんにちは! いいお天気ですね
36 # 文字列を変数に入れる
37 greeting = "こんにちは!"
38 print(greeting)
39
40 weather = 'いいお天気ですね'
41 print(weather)
42
43 #終了3
44 sys.exit()
文字列を変数に代入するときは、「 " 」ダブルクオーテーションもしくは「 ' 」シングルクオーテーションで囲みます。
37行目の greeting = "こんにちは!" は、文字列 "こんにちは!" を 変数 greeting に代入しています。
40行目の weather = 'いいお天気ですね' は、文字列 'いいお天気ですね' を 変数 greeting に代入しています。
④ 文字列を連結して変数に代入する
ソースコード #終了3 の1行下の sys.exit() の先頭に「 # 」を入れてコメントにします。
Ctrl キーを押しながら、 S キーを押して、ソースコードを上書き保存します。
コマンドプロンプトで F3 キーを押して、 Enter キーを押下します。
以下のように表示されます。
C:\Users\kotablog>python "C:\Python\practice02.py" 30 45.5 3 5 75.5 こんにちは! いいお天気ですね こんにちは!いいお天気ですね
46 # 文字列を連結する
47 sentence = greeting + weather
48 print(sentence)
49
50 #終了4
51 sys.exit()
文字列が入った変数を足し算すると文字列が連結されます。
47行目の sentence = greeting + weather で、文字列 "こんにちは!" の後ろに 文字列 "いいお天気ですね" を連結して 変数 sentence に代入しています。
⑤ 文字列と数値を連結して変数に代入する
ソースコード #終了4 の1行下の sys.exit() の先頭に「 # 」を入れてコメントにします。
Ctrl キーを押しながら、 S キーを押して、ソースコードを上書き保存します。
コマンドプロンプトで F3 キーを押して、 Enter キーを押下します。
以下のように表示されます。
C:\Users\kotablog>python "C:\Python\practice02.py" 30 45.5 3 5 75.5 こんにちは! いいお天気ですね こんにちは!いいお天気ですね Traceback (most recent call last): File "C:\Python\practice02.py", line 55, insentence = prologue + age TypeError: can only concatenate str (not "int") to str
タイプエラーとなりました。
TypeError: can only concatenate str (not "int") to str
直訳すると「 str ("int" ではない) のみを str に連結できます 」
53 # 文字列と数値の連結
54 prologue = "私の年齢は"
55 sentence = prologue + age
56 print(sentence)
57
58 #終了5
59 sys.exit()
54行目で prologue = "私の年齢は" となっているので、 変数 prologue は文字列が入っていることから str型 です。
そして 変数 age には 30 が入っているので int型 です。
55行目で str型 と int型 を連結しようとしたことでエラーになりました。
これを改善するには、データ型を変換します。そこで 文字列型に変換する 関数 str() を使います。
プログラムソースを以下のように修正します。
55 sentence = prologue + str(age)
Ctrl キーを押しながら、 S キーを押して、ソースコードを上書き保存します。
コマンドプロンプトで F3 キーを押して、 Enter キーを押下します。
エラーが取れて連結することができました。
C:\Users\kotablog>python "C:\Python\practice02.py" 30 45.5 3 5 75.5 こんにちは! いいお天気ですね こんにちは!いいお天気ですね 私の年齢は30
⑥ 変数にブール値を代入する
ブール値とは 真:True、偽:False を表す値です。
ソースコード #終了5 の1行下の sys.exit() の先頭に「 # 」を入れてコメントにします。
Ctrl キーを押しながら、 S キーを押して、ソースコードを上書き保存します。
コマンドプロンプトで F3 キーを押して、 Enter キーを押下します。
以下のように表示されます。
C:\Users\kotablog>python "C:\Python\practice02.py" 30 45.5 3 5 75.5 こんにちは! いいお天気ですね こんにちは!いいお天気ですね 私の年齢は30 True
61 # ブール値(bool)を変数に入れる
62 # 真:True、偽:False
63 enable = True
64 print(enable)
65
66 #終了6
67 sys.exit()
63行目の enable = True で、bool値 True を 変数 enable に代入しています。
⑦ 変数名に日本語は使えるのか?
ソースコード #終了6 の1行下の sys.exit() の先頭に「 # 」を入れてコメントにします。
Ctrl キーを押しながら、 S キーを押して、ソースコードを上書き保存します。
コマンドプロンプトで F3 キーを押して、 Enter キーを押下します。
以下のように表示されます。
C:\Users\kotablog>python "C:\Python\practice02.py" 30 45.5 3 5 75.5 こんにちは! いいお天気ですね こんにちは!いいお天気ですね 私の年齢は30 True A0001
69 # 日本語の変数は使えるか
70 商品コード = "A0001"
71 print(商品コード)
70行目の 日本語の変数名 商品コード も使うことができます。
しかし、これは推奨されていません。なぜなら、Pythonはグローバルスタンダードの言語であるのに、日本語を使うと日本語がわかる人しか読めなくなってしまいます。
では、商品コード を syohin_code と書くことになりますが、ソースを読むときに読みづらくなってしまいます。
自分のためのプログラムだったり、限られた範囲で利用するプログラムであれば、読みやすさ(可読性)を優先して日本語の変数名を使うのもありです。
⑧ 使うことができない変数名
74行目と75行目の先頭の「 # 」を削除してコメントを外します。
73 # 使うことができない変数名
74 1月 = "31日"
75 print(1月)
Ctrl キーを押しながら、 S キーを押して、ソースコードを上書き保存します。
コマンドプロンプトで F3 キーを押して、 Enter キーを押下します。
以下のように表示されます。
C:\Users\kotablog>python "C:\Python\practice02.py" File "C:\Python\practice02.py", line 74 1月 = "31日" ^ SyntaxError: invalid syntax
エラーとなりました。
変数名の先頭に数字(半角、全角とも)は使うことができません。
<プログラムの基本構造 | Pythonの変数の基礎 | Pythonの条件分岐文の基礎> |