プログラミング10分で読める

Python入門 - プログラミング初心者が最初に学ぶべきこと

プログラミング未経験者向けに、Pythonの基礎を丁寧に解説します。

Pythonが選ばれる理由

Pythonは初心者に最もおすすめのプログラミング言語です。文法がシンプルで読みやすく、AI・データ分析・Web開発など幅広い分野で使われています。世界中で最も人気のある言語の一つです。

📖

読みやすい

英語に近い自然な文法

🌍

幅広い用途

AI、Web、データ分析、自動化

📚

豊富なライブラリ

やりたいことがすぐにできる

👥

大きなコミュニティ

困ったときに情報が見つかる

基本文法とデータ型

変数と代入

Pythonでは変数の型を明示的に宣言する必要がありません。値を代入するだけで自動的に型が決まります。

変数の基本
# 変数への代入
name = "田中太郎"
age = 25
height = 175.5
is_student = True

# 変数の表示
print(name)      # 田中太郎
print(age)       # 25

# f文字列で複数の変数を組み合わせ
print(f"私は{name}{age}歳です")
# 出力: 私は田中太郎、25歳です

主要なデータ型

Pythonには様々なデータ型がありますが、まずは以下の基本型を覚えましょう。

データ型の例
# 数値型
integer_num = 42          # 整数(int)
float_num = 3.14159       # 小数(float)

# 文字列型(str)
message = "Hello, Python!"
multi_line = """
複数行の
文字列も
書けます
"""

# 真偽値型(bool)
is_active = True
is_deleted = False

# リスト(list)- 複数の値を順序付きで格納
fruits = ["りんご", "バナナ", "オレンジ"]
numbers = [1, 2, 3, 4, 5]

# 辞書(dict)- キーと値のペアで格納
person = {
    "name": "田中太郎",
    "age": 25,
    "city": "東京"
}

リストの操作

リストはPythonで最もよく使うデータ構造です。要素の追加、削除、アクセスの方法を覚えましょう。

リストの操作
fruits = ["りんご", "バナナ", "オレンジ"]

# 要素へのアクセス(インデックスは0から)
print(fruits[0])   # りんご
print(fruits[-1])  # オレンジ(最後の要素)

# 要素の追加
fruits.append("ぶどう")
print(fruits)  # ['りんご', 'バナナ', 'オレンジ', 'ぶどう']

# 要素の削除
fruits.remove("バナナ")

# リストの長さ
print(len(fruits))  # 3

# スライス(部分リストの取得)
numbers = [0, 1, 2, 3, 4, 5]
print(numbers[1:4])   # [1, 2, 3]
print(numbers[:3])    # [0, 1, 2]
print(numbers[3:])    # [3, 4, 5]

条件分岐と繰り返し

if文(条件分岐)

条件に応じて処理を分岐させます。Pythonではインデント(字下げ)でブロックを表現します。

if文の基本
age = 20

if age >= 20:
    print("成人です")
elif age >= 13:
    print("ティーンエイジャーです")
else:
    print("子供です")

# 比較演算子
# == 等しい
# != 等しくない
# >  より大きい
# >= 以上
# <  より小さい
# <= 以下

# 論理演算子で複数条件を組み合わせ
score = 85
attendance = 90

if score >= 80 and attendance >= 80:
    print("合格です")
elif score >= 80 or attendance >= 80:
    print("条件付き合格です")
else:
    print("不合格です")

for文(繰り返し)

リストや範囲の要素を順番に処理します。

for文の基本
# リストの要素を順番に処理
fruits = ["りんご", "バナナ", "オレンジ"]
for fruit in fruits:
    print(f"{fruit}が好きです")

# 出力:
# りんごが好きです
# バナナが好きです
# オレンジが好きです

# range()で数値の範囲を生成
for i in range(5):
    print(i)  # 0, 1, 2, 3, 4

# 開始値と終了値を指定
for i in range(1, 6):
    print(i)  # 1, 2, 3, 4, 5

# インデックス付きで繰り返し
for index, fruit in enumerate(fruits):
    print(f"{index + 1}番目: {fruit}")

while文

条件がTrueの間、処理を繰り返します。

while文の基本
count = 0
while count < 5:
    print(f"カウント: {count}")
    count += 1  # count = count + 1 と同じ

# break と continue
for i in range(10):
    if i == 3:
        continue  # 3をスキップ
    if i == 7:
        break     # 7で終了
    print(i)  # 0, 1, 2, 4, 5, 6

関数の定義と使い方

関数の基本

処理をまとめて再利用可能にします。defキーワードで定義します。

関数の定義
# 基本的な関数
def greet(name):
    return f"こんにちは、{name}さん!"

message = greet("田中")
print(message)  # こんにちは、田中さん!

# 複数の引数
def add(a, b):
    return a + b

result = add(3, 5)
print(result)  # 8

# デフォルト引数
def power(base, exponent=2):
    return base ** exponent

print(power(3))       # 9 (3の2乗)
print(power(2, 3))   # 8 (2の3乗)

実用的な関数の例

消費税計算関数
def calculate_tax(price, tax_rate=0.10):
    """
    税込み価格を計算する関数

    引数:
        price: 税抜き価格
        tax_rate: 税率(デフォルト10%)

    戻り値:
        税込み価格(小数点以下切り捨て)
    """
    tax = price * tax_rate
    total = price + tax
    return int(total)

# 使用例
print(calculate_tax(1000))        # 1100
print(calculate_tax(1000, 0.08))  # 1080(8%の場合)

実践的なプログラム例

例1: 成績判定プログラム

成績判定
def get_grade(score):
    """点数から成績を判定する"""
    if score >= 90:
        return "A"
    elif score >= 80:
        return "B"
    elif score >= 70:
        return "C"
    elif score >= 60:
        return "D"
    else:
        return "F"

# 生徒のスコアリスト
students = {
    "田中": 85,
    "鈴木": 72,
    "佐藤": 93,
    "山田": 58
}

for name, score in students.items():
    grade = get_grade(score)
    print(f"{name}さん: {score}点 → 成績{grade}")

# 出力:
# 田中さん: 85点 → 成績B
# 鈴木さん: 72点 → 成績C
# 佐藤さん: 93点 → 成績A
# 山田さん: 58点 → 成績F

例2: じゃんけんゲーム

じゃんけんゲーム
import random

def janken():
    """じゃんけんゲーム"""
    hands = ["グー", "チョキ", "パー"]

    # プレイヤーの手を入力
    print("1: グー, 2: チョキ, 3: パー")
    player_choice = int(input("選んでください: ")) - 1
    player_hand = hands[player_choice]

    # コンピュータの手をランダムに選択
    computer_hand = random.choice(hands)

    print(f"あなた: {player_hand}")
    print(f"コンピュータ: {computer_hand}")

    # 勝敗判定
    if player_hand == computer_hand:
        return "引き分け!"
    elif (player_hand == "グー" and computer_hand == "チョキ") or          (player_hand == "チョキ" and computer_hand == "パー") or          (player_hand == "パー" and computer_hand == "グー"):
        return "あなたの勝ち!"
    else:
        return "コンピュータの勝ち!"

# ゲーム実行
# result = janken()
# print(result)

例3: ToDoリスト管理

ToDoリスト
class TodoList:
    """シンプルなToDoリスト管理クラス"""

    def __init__(self):
        self.tasks = []

    def add(self, task):
        """タスクを追加"""
        self.tasks.append({"task": task, "done": False})
        print(f"追加しました: {task}")

    def complete(self, index):
        """タスクを完了にする"""
        if 0 <= index < len(self.tasks):
            self.tasks[index]["done"] = True
            print(f"完了しました: {self.tasks[index]['task']}")

    def show(self):
        """タスク一覧を表示"""
        print("\n--- ToDoリスト ---")
        for i, item in enumerate(self.tasks):
            status = "✓" if item["done"] else " "
            print(f"[{status}] {i}. {item['task']}")

# 使用例
todo = TodoList()
todo.add("Pythonの勉強")
todo.add("買い物")
todo.add("メール返信")
todo.complete(0)
todo.show()

# 出力:
# --- ToDoリスト ---
# [✓] 0. Pythonの勉強
# [ ] 1. 買い物
# [ ] 2. メール返信

学習の進め方

1
環境構築

Python公式サイトからインストール、またはGoogle Colabで即座に開始可能

2
基本文法を手を動かして学ぶ

この記事のコードを実際に入力して実行してみましょう

3
小さなプログラムを自作

電卓、おみくじ、クイズゲームなど身近なものから作成

4
エラーを恐れない

エラーメッセージを読んで解決する力がプログラマーの必須スキル

まとめ

Pythonは読みやすい文法と豊富なライブラリで、初心者からプロまで幅広く使われている言語です。この記事で紹介した基本をマスターしたら、次はファイル操作、Webスクレイピング、データ分析など興味のある分野に進んでみましょう。毎日少しずつでもコードを書くことが上達への近道です。

H
honualohak編集部

テクノロジーで人々の日常をより便利に。AI、プログラミング、Web開発に関する情報を発信しています。