Pythonを学ぶ際に最低限知っておくべき文法

Pythonには以下のような基本的な概念や構文があります。

1. 変数とデータ型

  • 変数: データを保存するための名前付き場所です。Pythonでは変数にデータ型を明示的に指定する必要がなく、代入するだけで自動的にデータ型が決定されます。
  • データ型: 主に整数(int)、浮動小数点数(float)、文字列(str)、論理型(bool)があります。
x = 10        # 整数型
name = "John" # 文字列型
price = 9.99  # 浮動小数点型
is_active = True # 論理型

2. リストと辞書

  • リスト: 複数の要素を一つにまとめるデータ構造。順序があります。
numbers = [1, 2, 3, 4, 5]
names = ["Alice", "Bob", "Charlie"]

辞書: キーと値のペアを持つデータ構造。順序は保証されません。

person = {"name": "John", "age": 30, "city": "New York"}

3. 条件分岐

  • ifelifelseを使って、条件に応じた処理を記述します。
age = 18
if age >= 18:
    print("You are an adult.")
elif age > 12:
    print("You are a teenager.")
else:
    print("You are a child.")

4. ループ

  • forループ: 指定した回数やリストの要素を反復します。
for i in range(5):
    print(i)

for name in names:
    print(name)

whileループ: 条件が真である間、繰り返し処理を行います。

count = 0
while count < 5:
    print(count)
    count += 1

5. 関数

  • 関数は特定の処理をまとめて定義し、必要な時に呼び出して使います。defキーワードで定義します。
def greet(name):
    return f"Hello, {name}!"

print(greet("Alice"))

6. モジュールのインポート

  • 他のPythonファイルや標準ライブラリの機能を使うために、import文を使います。
import math
print(math.sqrt(16)) # 4.0

7. 例外処理

  • プログラムがエラーで停止しないように、tryexceptで例外処理を行います。
try:
    result = 10 / 0
except ZeroDivisionError:
    print("You can't divide by zero!")

8. リスト内包表記

  • リストを簡潔に生成するための方法です。
squares = [x**2 for x in range(10)]

れらの文法を理解することで、基本的なPythonプログラムを記述することが可能になります。

次のステップとして、これらの概念を全て使用した簡単なプログラムを紹介します。

# 1. 変数とデータ型
name = input("What is your name? ")  # 文字列型
age = int(input("How old are you? "))  # 整数型にキャスト

# 2. リストと辞書
hobbies = ["reading", "sports", "music"]  # リスト
person = {"name": name, "age": age, "hobbies": hobbies}  # 辞書

# 3. 条件分岐
if person["age"] >= 18:
    print(f"Hello, {person['name']}! You are an adult.")
elif person["age"] > 12:
    print(f"Hello, {person['name']}! You are a teenager.")
else:
    print(f"Hello, {person['name']}! You are a child.")

# 4. ループ
print("Your hobbies are:")
for hobby in person["hobbies"]:  # リスト内の趣味を出力
    print(f"- {hobby}")

# 5. 関数
def calculate_square(number):
    return number ** 2

numbers = [1, 2, 3, 4, 5]
squares = [calculate_square(n) for n in numbers]  # リスト内包表記で計算
print("The squares of the numbers are:", squares)

# 6. モジュールのインポート
import math

# 平方根の計算をする関数を定義
def print_square_roots(numbers):
    for number in numbers:
        print(f"The square root of {number} is {math.sqrt(number)}")

print_square_roots(numbers)

# 7. 例外処理
try:
    division_result = 10 / 0
except ZeroDivisionError:
    print("You can't divide by zero!")

# 8. リスト内包表記
even_numbers = [x for x in range(20) if x % 2 == 0]
print("Even numbers between 0 and 20:", even_numbers)

以上、Pythonを学ぶ際に最低限知っておくべき文法でした