Pythonの基本文法とデータ型:変数、文字列、数値、ブール値入門

Pythonは、シンプルで読みやすい文法を持ち、初学者から上級者まで幅広く利用されているプログラミング言語です。

本記事では、初級者向けにPythonの基本文法と主要なデータ型(変数、文字列、数値、ブール値)について、丁寧に解説していきます。

この記事を通して、Pythonの基本概念を理解し、実際にコードを書きながら学習を進めることができます。また、最後には演習問題とその解答例も掲載していますので、復習や実践の一助としてご活用ください。


スクリプトの基本構成

Pythonのプログラムは、テキストファイルにコードを記述し、拡張子「.py」として保存します。例えば、以下のような簡単なコードを実行してみましょう。

# hello.py
print("Hello, Python!")

このコードは、コンソールに「Hello, Python!」と出力します。Pythonはインデントによってブロックを定義するため、スペースやタブの使い方に注意しましょう。


変数とデータ型

Pythonでは、変数を使って値を格納・操作します。ここでは、変数の基本的な使い方と、主要なデータ型である文字列、数値、ブール値について学びます。

変数の基本

変数とは、データを保存するための「」のようなものです。Pythonでは変数に値を代入する際、型を明示的に宣言する必要はありません。以下の例をご覧ください。

# 変数への代入例
message = "Hello, Python!"  # 文字列型
number = 42               # 数値型(整数)
pi = 3.14159              # 数値型(浮動小数点数)
flag = True               # ブール値型

変数名は、英数字とアンダースコア(_)を用いて命名します。数字で始めることはできないため、注意してください。

文字列 (str)

文字列は、テキストデータを表現するための型です。シングルクォート ' ' またはダブルクォート " " を使って表現します。

# 文字列の例
greeting = "こんにちは、Python!"
name = '太郎'
message = greeting + " " + name  # 文字列の連結
print(message)

文字列にはスライス(部分抽出)や、フォーマット機能(f-string、formatメソッド)を使って動的に内容を変更することが可能です。

# f-stringを利用した例
age = 25
info = f"{name}さんは{age}歳です。"
print(info)

数値 (int, float)

数値型には主に整数(int)と浮動小数点数(float)の2種類があります。

整数(int)

数値の計算やループ処理、カウントなどに使用されます。

a = 10
b = 3
print(a + b)   # 足し算 → 13
print(a - b)   # 引き算 → 7
print(a * b)   # 掛け算 → 30
print(a / b)   # 割り算 → 3.333...
浮動小数点数(float)

小数点を含む数値の計算に使います。

pi = 3.14159
radius = 5.0
area = pi * radius ** 2  # 半径5の円の面積
print(area)

Pythonでは、算術演算子として +, -, *, /, //(整数除算)、%(剰余)、**(累乗)などが利用可能です。数値演算では、演算の優先順位や丸め誤差についても理解しておくと良いでしょう。

ブール値 (bool)

ブール値は、真(True)または偽(False)の2つの値を取ります。条件分岐(if文など)やループの制御に広く使われます。

is_adult = True
has_permission = False

if is_adult and not has_permission:
    print("大人ですが、アクセス許可はありません。")
else:
    print("条件を満たしています。")

ブール値は、比較演算子(==, !=, <, >, <=, >=)や論理演算子(and, or, not)を用いることで得られます。たとえば、次のように記述します。

x = 10
y = 20
print(x < y)   # Trueが返る

Pythonにおける変数とデータ型の使い方

ここでは、実際に変数とデータ型を利用した基本的なプログラム例を紹介します。

ユーザー入力の取得と処理

Pythonでは、input()関数を使ってユーザーからの入力を受け取ることができます。入力された値は文字列として扱われるため、数値計算に利用する場合は型変換が必要です。

# ユーザーから数値を入力して計算する例
num1 = input("1つ目の数値を入力してください: ")
num2 = input("2つ目の数値を入力してください: ")

# 入力は文字列型なので、整数に変換
num1 = int(num1)
num2 = int(num2)

result = num1 + num2
print(f"入力された数値の合計は {result} です。")

文字列操作の実例

文字列の結合、分割、置換など、基本的な操作をいくつか見てみましょう。

# 文字列操作の例
text = "Pythonは楽しい言語です。"

# 文字列の分割
words = text.split("は")
print("分割結果:", words)

# 文字列の置換
new_text = text.replace("楽しい", "非常に楽しい")
print("置換結果:", new_text)

数値計算の基本

数値型を使った計算では、基本的な四則演算に加え、数学モジュールを利用することで、より複雑な計算も行えます。

import math

# 累乗計算と平方根
base = 2
exponent = 3
power = base ** exponent
square_root = math.sqrt(16)

print(f"{base}の{exponent}乗は {power} です。")
print(f"16の平方根は {square_root} です。")

論理演算と条件分岐の実例

プログラムの流れを制御するために、論理演算子や条件分岐が重要です。以下の例では、ユーザーの年齢に基づいてアクセス許可を判断しています。

age = int(input("あなたの年齢を入力してください: "))

if age >= 18:
    print("成人として認識されました。")
else:
    print("未成年として認識されました。")

演習問題:Pythonの基本文法とデータ型の理解を深めよう

ここまで学んだ内容を確認するために、以下の演習問題に挑戦してみましょう。

演習問題

問題

次の要件を満たすPythonプログラムを作成してください。

  1. ユーザーに名前と年齢を入力してもらう。
  2. 入力された名前は文字列として扱い、年齢は数値に変換する。
  3. 年齢が18歳以上の場合は「[名前]さんは成人です。」と出力し、18歳未満の場合は「[名前]さんは未成年です。」と出力する。
  4. プログラムの最後に、変数の型(名前、年齢、判定結果)をそれぞれ確認するために、type()関数を使って各変数の型情報も表示する。

演習問題の解答例

以下は、上記の演習問題に対する一例の解答です。

# ユーザーから名前と年齢の入力を受け取る
name = input("あなたの名前を入力してください: ")
age_input = input("あなたの年齢を入力してください: ")

# 年齢は文字列型なので、整数型に変換する
age = int(age_input)

# 年齢による条件分岐
if age >= 18:
    result = f"{name}さんは成人です。"
else:
    result = f"{name}さんは未成年です。"

# 結果の表示
print(result)

# 変数の型を確認
print("変数'name'の型:", type(name))
print("変数'age'の型:", type(age))
print("変数'result'の型:", type(result))
解説
  • 入力の取得と型変換
    input()関数でユーザーから名前と年齢を受け取り、年齢は文字列のため、int()を使って整数に変換しています。
  • 条件分岐
    if文を利用し、年齢が18以上の場合とそれ以外の場合で異なるメッセージを作成しています。
  • 変数の型確認
    type()関数を使うことで、各変数がどの型であるかを確認でき、デバッグや学習の際に役立ちます。

まとめ

本記事では、Pythonの基本文法とデータ型(変数、文字列、数値、ブール値)の基礎を解説しました。

  • 変数の使い方
    変数は、プログラム内でデータを格納・操作するための基本的な要素です。
  • 文字列の扱い
    テキストデータとしての文字列は、連結やスライス、フォーマットを利用して柔軟に操作できます。
  • 数値演算
    整数と浮動小数点数を活用し、基本的な算術演算から数学モジュールを使った計算まで行えます。
  • ブール値と条件分岐
    真偽値を利用して、プログラムの流れを制御する条件分岐は、あらゆるプログラムの基礎となる技術です。

また、最後に示した演習問題を通じて、実際にコードを書くことで理解を深めることができます。最初は基本に立ち返って学習することが、後々の応用や高度なプログラミング技術の習得に繋がります。

プログラミングは実際に手を動かして学ぶことが重要です。まずは簡単なコードを書いて動作を確認し、エラーが出た場合は原因を調べながら改善していくことで、自然と理解が深まっていくでしょう。これからPythonを学ぶ皆さんが、この記事を参考に基礎をしっかり固め、さらなる応用力を身に付けていくことを期待しています。