すべてのプログラムは順次構造・反復構造・選択構造の3つの基本構造の組み合わせで記述する事ができます。
このページではプログラミングの基本である順次構造を通して基本的な構造を学びます。
プログラミングでは、計算や処理で用いられるデータを保持するために変数が使われます。変数は値や文字列を保管する箱のようなものです。
代入演算子=を使い、初めて変数に値を代入した時点で変数が作られます。
以下の1行だけのプログラムを考えてみましょう。
a = 2 このプログラムを実行すると、値2を格納した変数aが作られます。=は代入演算子と呼ばれ、左辺に変数名、右辺に値を書きます。a = 2は、aと2が等しいという意味ではなく、式の左辺であるaに式の右辺である2を代入するという意味です。
画面右の実行可視化部分から「例題1」を選択して、実行の様子を確認してみましょう。
以下の3行からなるプログラムを考えてみましょう。
a = 2
b = 5
a = b 上記のプログラムは上から1行ずつ順に実行され、以下の流れで処理が進みます。
aを、初期値2で作成する。(aの箱に2が入る)bを、初期値5で作成する。(bの箱に5が入る)aに、bの値(5)を代入する。(aの箱にbの箱の値5が入る)ゆえに、最後まで実行すると、変数aの値は5に、変数bの値は5になります。
3行目のように、変数から変数に値を代入することもできます。この場合、右辺の変数の値が参照され、左辺の変数にコピーされます。参照された値はあくまでも参照されるだけであり、値がなくなったり変化したりするわけではありません。
画面右の実行可視化部分から「例題2」を選択して、実行の様子を確認してみましょう。
変数には、整数や実数、文字列などのデータの種別を表す型があります。
Pythonでは変数に値を代入した時点で型が決まるため型の指定は行いません。主な型は以下の通りです。
1、2、3など。1.0、2.5、3.14など。"Hello"、"World"、"1"など。ダブルクォート"(またはシングルクォート')で囲む必要がある。True(真)、False(偽)の2つの値を持つ。比較演算子の結果などで使われる。プログラムでは、数値や文字列などのデータを扱う際に、演算子を使って計算や文字列の結合、比較などを行います。
以下にPythonでの主な演算子を示します。
+、-、*、/、%算術演算子は数値の計算を行う際に使います。+は結合演算子としても使われます。
+:数値同士の足し算や、文字列同士の結合。1 + 2は3、"Hello" + "World"は"HelloWorld"になります。
1 + 1は2になりますが、文字列の場合、"1" + "1"は"11"になります。-:引き算。3 - 2は1になります。*:掛け算。2 * 3は6になります。/:割り算。6 / 2は3になります。%:割り算の余り。7 % 3は1になります(2あまり1の1の部分)。==、!=、<、>、<=、>=比較演算子は、左辺と右辺の値を比較して、比較結果が正しいかどうかの真偽値(TrueまたはFalse)を返します。
==:等しい
Trueを返します。1 == 1はTrue、1 == 2はFalseになります。!=:等しくない
Trueを返します。1 != 2はTrue、1 != 1はFalseになります。<:小なり
Trueを返します。1 < 2はTrue、2 < 1はFalseになります。>:大なり
Trueを返します。2 > 1はTrue、1 > 2はFalseになります。<=:小なりイコール
Trueを返します。1 <= 2はTrue、1 <= 1もTrueになります。>=:大なりイコール
Trueを返します。2 >= 1はTrue、1 >= 1もTrueになります。以下のプログラムを考えてみましょう。
a = 1 + 2
b = 5 % 2
c = a > b このプログラムを実行すると、以下の流れで処理が進みます。
aを、1 + 2の計算結果である3を初期値として作成する。bを、5 % 2の計算結果である1を初期値として作成する。cを、a > bの計算結果であるTrueを初期値として作成する。ゆえに最後まで実行すると変数aの値は3に、変数bの値は1に、変数cの値はTrueになります。
画面右の実行可視化部分から「例題3」を選択して、実行の様子を確認してみましょう。
以下のプログラムを考えてみましょう。
a = 1
a = a + 1
a = a + 2
a = a - 3 このプログラムを実行すると、以下の流れで処理が進みます。
aを、初期値1で作成する。aに、a + 1の計算結果(すなわち1 + 1の結果)である2を代入する。aに、a + 2の計算結果(すなわち2 + 2の結果)である4を代入する。aに、a - 3の計算結果(すなわち4 - 3の結果)である1を代入する。このように、変数の代入式の右辺では、変数の値を参照して計算を行うことができます。変数の値を更新する際には、上記のように変数自身の値を参照して計算を行い、その結果を変数に代入することもできます。
なお、累算代入演算子(+=や-=など)を用いると、a = a + 1はa += 1、a = a - 3はa -= 3と省略して書くことができます。教材では分かりやすさのため、a = a + 1のように記述し、累算代入演算子を使わない形式で記述しています。
「#」(シャープ)で始まる文章はコメントとして扱われ、プログラムの実行には影響しません。コメントはプログラムの内容を説明するために使います。
# このプログラムを実行しても何も起こらない!なぜならすべてコメントだから!
# a = 1
# b = 2
# c = a + b
# print(c) このページでは、プログラミングの基本である変数と演算子について学びました。次のページに移る前に、以下の確認問題に取り組んで、学習内容への理解を深めましょう。
次のコードを最後まで実行した時、bに入っている値は何か?
a = 2
b = 5
a = b
b = a 答え:bには5が入ります。
a = 2
b = 5
a = b # aにbの値である5が代入される
b = a # bにaの値である5が代入される 次のコードを最後まで実行した時、最後の出力は何か?
a = 2
b = 5
c = a
a = b
b = c
print(f"a: {a}, b: {b}, c: {c}") 答え:aは5、bは2。aとbの値を入れ替える処理を行っています。
a = 2
b = 5
c = a # cにaの値である2が代入される
a = b # aにbの値である5が代入される
b = c # bにcの値である2が代入される
print(f"a: {a}, b: {b}, c: {c}") # a: 5, b: 2, c: 2