1章: Pythonの基本

1.1 Pythonの導入

Pythonの概要とバージョン


Pythonは、1991年にGuido van Rossumによって開発された高水準プログラミング言語です。Pythonは、プログラミングの初学者からプロの開発者まで広く使われており、シンプルで読みやすい文法と豊富なライブラリが特徴です。

Pythonには、現在2つの主要バージョンが存在しています。最新のバージョンは、Python 3.x系列であり、Python 2.x系列はサポートが終了しています。現在は、Python 3.10が最新の安定版としてリリースされています。Pythonのバージョンによって、一部の文法やライブラリの使い方が異なるため、学習や開発する際にはバージョンに注意する必要があります。

Pythonは、幅広い用途に利用されています。Web開発、データ解析、機械学習、自然言語処理、ゲーム開発など、様々な分野で利用されています。また、Pythonの人気の高さから、多くのオープンソースプロジェクトが存在しており、様々なライブラリやフレームワークが提供されています。

Pythonのインストールと設定


Pythonのインストールと設定は、OSや環境によって異なります。以下では、WindowsとmacOSの環境でのPythonのインストールと設定方法を説明します。

Windowsの場合

Pythonのインストーラをダウンロードする

公式サイトから、最新版のPythonのインストーラをダウンロードします。
https://www.python.org/downloads/
インストーラを起動する

ダウンロードしたインストーラをダブルクリックして起動します。
「Add Python X.X to PATH」をチェックして、PATHに追加します。
インストールを開始する

「Install Now」をクリックします。
インストールが完了すると、コマンドプロンプトから「python」と入力して、Pythonが起動するか確認します。

macOSの場合

Homebrewをインストールする

HomebrewはmacOS用のパッケージマネージャーです。ターミナルで以下のコマンドを実行して、Homebrewをインストールします。
bash
Copy code

/bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)”

Pythonをインストールする

ターミナルで以下のコマンドを実行して、Pythonをインストールします。
Copy code

brew install python

インストールが完了すると、ターミナルから「python」と入力して、Pythonが起動するか確認します。

以上が、WindowsとmacOSの環境でのPythonのインストールと設定方法です。インストール後は、pipを使ってパッケージをインストールすることができます。pipは、Pythonのパッケージマネージャーであり、ターミナルまたはコマンドプロンプトから利用することができます。

Pythonの開発環境のセットアップ


Pythonの開発環境をセットアップする方法はいくつかあります。以下では、Windows、macOS、LinuxでのPython開発環境のセットアップ方法について説明します。

Windowsの場合

Visual Studio Codeをダウンロードする

Visual Studio Codeは、Microsoftが提供する無料で使えるエディターです。以下の公式サイトからダウンロードします。
https://code.visualstudio.com/
Python拡張機能をインストールする

Visual Studio Codeの左側にある拡張機能のアイコンをクリックし、Python拡張機能を検索してインストールします。
Pythonのパスを設定する

Visual Studio Codeの「設定」から、「Python Path」を検索して、Pythonのパスを設定します。
Pythonファイルを作成する

Visual Studio Codeで、新しいファイルを作成し、拡張子を「.py」として保存します。
実行する

Pythonファイルを開いて、「Run Python File in Terminal」をクリックして実行します。

macOSの場合

Visual Studio Codeをダウンロードする

Windowsと同様に、Visual Studio Codeをダウンロードします。
Python拡張機能をインストールする

Visual Studio Codeの左側にある拡張機能のアイコンをクリックし、Python拡張機能を検索してインストールします。
Pythonのパスを設定する

Visual Studio Codeの「設定」から、「Python Path」を検索して、Pythonのパスを設定します。
Pythonファイルを作成する

Visual Studio Codeで、新しいファイルを作成し、拡張子を「.py」として保存します。
実行する

Pythonファイルを開いて、「Run Python File in Terminal」をクリックして実行します。

Linuxの場合

Visual Studio Codeをダウンロードする

Visual Studio Codeは、公式サイトから.debパッケージをダウンロードします。
https://code.visualstudio.com/
Python拡張機能をインストールする

Visual Studio Codeの左側にある拡張機能のアイコンをクリックし、Python拡張機能を検索してインストールします。
Pythonのパスを設定する

Visual Studio Codeの「設定」から、「Python Path」を検索して、Pythonのパスを設定します。
Pythonファイルを作成する

Visual Studio Codeで、新しいファイルを作成し、拡張子を「.py」として保存します。
実行する

1.2 Pythonのデータ型

リスト、タプル、辞書の基本的な操作


Pythonには、数値、文字列、リスト、タプル、辞書といったデータ型があり、それぞれに対して基本的な操作が用意されています。以下では、それぞれのデータ型について、基本的な操作について説明します。

1.数値

Pythonの数値には整数型(int)、浮動小数点型(float)、複素数型(complex)があります。基本的な数値の操作は、四則演算(+、-、×、÷)やべき乗(**)です。

#数値の演算

x = 5
y = 3
print(x + y) # 8
print(x – y) # 2
print(x * y) # 15
print(x / y) # 1.6666666666666667
print(x ** y) # 125

2.文字列

Pythonの文字列は、シングルクォート(’)またはダブルクォート(”)で囲まれた文字列です。文字列の操作としては、文字列の結合(+)、文字列の繰り返し(*)、部分文字列の取り出し、文字列の長さの取得(len())があります。

#文字列の操作s1 = ‘Hello,’s2 = “Python”s3 = s1 + ‘ ‘ + s2 # Hello, Pythons4 = s1 * 3 # Hello, Hello, Hello,print(s3)print(s4)print(s3[0:5]) # Helloprint(len(s3)) # 13

3.リスト

Pythonのリストは、複数の値をまとめて扱うことができるデータ型です。リストには、要素の追加(append())、要素の挿入(insert())、要素の削除(remove())、リストの結合(+)、リストの繰り返し(*)、部分リストの取り出し、リストの長さの取得(len())などの操作があります。

データ型の変換


Pythonでは、さまざまなデータ型があり、これらのデータ型の間で変換が必要になることがあります。Pythonには、データ型を変換するための関数が用意されています。以下では、代表的なデータ型の変換方法について説明します。

#リストの操作

l1 = [1, 2, 3, 4, 5]
l2 = [6, 7, 8, 9, 10]
l3 = l1 + l2 # [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
l4 = l1 * 3 # [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]
del l1[0] # [2, 3, 4, 5]
l2.append(11) # [6, 7, 8, 9, 10, 11]
print(l1)
print(l2)
print(l3)
print(l4)

1.文字列から数値への変換

Pythonの文字列を数値に変換するためには、int()やfloat()関数を使用します。

#文字列から数値への変換

s = “123”
n = int(s) # 123
f = float(s) # 123.0
print(n)
print(f)

2.数値から文字列への変換

Pythonの数値を文字列に変換するためには、str()関数を使用します。

#数値から文字列への変換

n = 123
s = str(n) # “123”
print(s)

3.リストやタプルから文字列への変換

Pythonのリストやタプルを文字列に変換するためには、join()メソッドを使用します。

#リストやタプルから文字列への変換

l = [“a”, “b”, “c”]
s = “”.join(l) # “abc”
t = (“d”, “e”, “f”)
s = “”.join(t) # “def”
print(s)

4.文字列からリストへの変換

Pythonの文字列をリストに変換するためには、split()メソッドを使用します。

#文字列からリストへの変換

s = “a,b,c”
l = s.split(“,”) # [‘a’, ‘b’, ‘c’]
print(l)

5.文字列から辞書への変換

Pythonの文字列を辞書に変換するためには、json.loads()関数を使用します。ただし、この関数はJSON形式の文字列しか扱えません。

#文字列から辞書への変換

import json
s = ‘{“name”: “Alice”, “age”: 25}’
d = json.loads(s) # {“name”: “Alice”, “age”: 25}
print(d)

1.3 制御構文について

条件文について


Pythonの条件分には、if文があります。if文は、ある条件が成立する場合にだけ実行したい処理を指定するために使用されます。以下は、基本的なif文の構文です。

if 条件式:
 条件式がTrueの場合に実行する処理


条件式がTrueの場合に実行される処理は、if文の下にインデントして記述します。また、条件式がFalseの場合に実行したい処理を指定する場合は、else文を使用します。

if 条件式:
 条件式がTrueの場合に実行する処理
else:
 条件式がFalseの場合に実行する処理

また、複数の条件がある場合には、elif文を使用して条件を追加することができます。

if 条件式1:
 条件式1がTrueの場合に実行する処理
elif 条件式2:
 条件式2がTrueの場合に実行する処理
else:
 すべての条件式がFalseの場合に実行する処理

以下は、if文を使用した例です。

x = 10

if x > 0:
print(“xは0より大きいです。”)
else:
print(“xは0以下です。”)


この例では、変数xが0より大きい場合に「xは0より大きいです。」というメッセージを表示し、それ以外の場合に「xは0以下です。」というメッセージを表示します。

ループ文について


Pythonには、forループとwhileループの2種類のループがあります。それぞれの使い方を説明します。

1.Forループ

forループは、ある範囲内の値を繰り返し処理するために使用されます。以下は、基本的なforループの構文です。

for 変数 in イテラブルオブジェクト:
 繰り返し処理をする文

イテラブルオブジェクトは、リスト、タプル、文字列など、反復可能なオブジェクトである必要があります。変数には、イテラブルオブジェクトの要素が順番に代入されます。

以下は、forループを使用した例です。

fruits = [‘apple’, ‘banana’, ‘cherry’]

for fruit in fruits:
print(fruit)

この例では、リストfruitsの要素を順番に取り出し、それぞれの要素について「print(fruit)」を実行しています。

2.Whileループ

whileループは、ある条件がTrueの間、繰り返し処理を実行するために使用されます。以下は、基本的なwhileループの構文です。

while 条件式:
 繰り返し処理をする文

条件式がTrueの間、繰り返し処理を実行します。条件式がFalseになると、ループを終了します。

以下は、whileループを使用した例です。

i = 0

while i < 5:
print(i)
i += 1

この例では、変数iを0で初期化し、iが5未満の場合にiの値を表示してからiに1を加えます。iが5以上になると、ループを終了します。

break, continue, pass文について


1.Break文

break文は、繰り返し処理(forループ、whileループ)を途中で終了するために使用されます。

break文を実行すると、ループから抜け出し、その後の処理を実行します。以下は、forループの中でbreak文を使用する例です。

fruits = [‘apple’, ‘banana’, ‘cherry’]

for fruit in fruits:
if fruit == ‘banana’:
break
print(fruit)

この例では、fruitsリストの要素を順番に取り出し、それぞれの要素についてif文でチェックしています。もし要素が’banana’であれば、break文を実行してループから抜け出します。それ以外の要素については、print文で表示します。

以下は、whileループの中でbreak文を使用する例です。

i = 0

while i < 5:
print(i)
i += 1
if i == 3:
break

この例では、変数iを0で初期化し、iが5未満の場合にiの値を表示してからiに1を加えます。iが3になった時点でbreak文を実行して、ループから抜け出します。このため、iの値が3のときにループが終了します。

break文は、特定の条件が満たされたときにループを終了する必要がある場合に便利です。

2.continue文

continue文は、繰り返し処理(forループ、whileループ)の中で、その時点での処理をスキップし、次のループ処理に進むために使用されます。

continue文を実行すると、その時点での処理をスキップして、次のループ処理に移ります。以下は、forループの中でcontinue文を使用する例です。

fruits = [‘apple’, ‘banana’, ‘cherry’]
for fruit in fruits:
if fruit == ‘banana’:
continue
print(fruit)

この例では、fruitsリストの要素を順番に取り出し、それぞれの要素についてif文でチェックしています。もし要素が’banana’であれば、continue文を実行してその時点での処理をスキップし、次のループ処理に進みます。それ以外の要素については、print文で表示します。

以下は、whileループの中でcontinue文を使用する例です。

i = 0

while i < 5:
i += 1
if i == 3:
continue
print(i)

この例では、変数iを0で初期化し、iが5未満の場合にiの値を表示します。iが3の場合にはcontinue文を実行して、その時点での処理をスキップし、次のループ処理に進みます。このため、iの値が3のときには表示されません。

continue文は、特定の条件が満たされたときにループの中の処理をスキップする必要がある場合に便利です。

3.pass文について

pass文は、Pythonの制御構文の一つで、何もしないという意味を持ちます。コードの構文が必要であるが、実行する必要がない場合に使用されます。

例えば、if文の条件分岐の中身が後で実装する予定で、現在は空欄のままにしておきたい場合などに、pass文を使用することができます。

以下は、pass文を使用したif文の例です。

x = 10

if x < 0:
# xが負の場合の処理
pass
elif x == 0:
# xが0の場合の処理
print(“xは0です”)
else:
# xが正の場合の処理
print(“xは正の数です”)

この例では、if文の中身には何も書かれていませんが、xが負の場合には何らかの処理を行いたいという場合に、後で実装することができます。

pass文は、また、関数やクラスの定義時にも使用されます。例えば、関数の定義時には、関数の中身を後で実装することがあるため、pass文を使用することができます。

def my_function():
pass


このように、pass文は、コードの構文が必要であるが、実行する必要がない場合に使用されます。

1.4 関数について

関数の定義と呼び出し


関数とは、特定の処理をまとめて名前をつけたもので、同じ処理を複数回繰り返す必要がある場合や、プログラムの構造をわかりやすくするために使われます。

Pythonでは、def文を使用して関数を定義します。以下は、簡単な関数を定義する例です。

def say_hello():
print(“Hello, World!”)

この関数は、”Hello, World!”という文字列を表示するだけの簡単なものです。この関数を呼び出すには、関数名に()をつけて記述します。

say_hello()

このようにして、関数が呼び出され、”Hello, World!”という文字列が表示されます。

関数には、引数を渡すこともできます。引数は、関数の処理に必要な情報を渡すために使用されます。以下は、引数を使用した関数の定義と呼び出しの例です。

def greet(name):
print(f”Hello, {name}!”)

greet(“Alice”)
greet(“Bob”)

この関数は、引数として名前を受け取り、”Hello, [名前]!”という文字列を表示するものです。関数を呼び出す際に、引数として渡す名前を指定しています。この場合、”Alice”と”Bob”が引数となり、それぞれ”Hello, Alice!”と”Hello, Bob!”という文字列が表示されます。

また、関数から値を返すこともできます。値を返す場合には、return文を使用します。以下は、値を返す関数の定義と呼び出しの例です。

def add_numbers(x, y):
return x + y

result = add_numbers(3, 5)
print(result)

この関数は、2つの引数を受け取り、その和を返すものです。関数を呼び出す際に、引数として3と5を指定しています。関数からは、引数の和である8が返され、それが変数resultに代入されます。最後に、resultの値である8が表示されます。

引数の受け渡しについて


Pythonでは、関数の引数にはデフォルト値を設定できたり、位置引数やキーワード引数を混在させたりすることができます。

位置引数を使った関数の定義では、引数を関数に渡す際に、その引数の位置が重要となります。以下は位置引数を使用した関数の定義と呼び出しの例です。

def greet(name, message):
print(f”{name}, {message}!”)

greet(“Alice”, “Hello”)
greet(“Bob”, “Goodbye”)

この関数は、2つの引数を受け取り、それらを表示するものです。関数を呼び出す際に、”Alice”をname引数に、”Hello”をmessage引数に指定しています。この場合、”Alice, Hello!”という文字列が表示されます。

キーワード引数を使った関数の定義では、引数にデフォルト値を設定することができます。デフォルト値を設定した引数は、関数呼び出し時に省略することができます。以下は、キーワード引数を使用した関数の定義と呼び出しの例です。

def greet(name=”World”, message=”Hello”):
print(f”{name}, {message}!”)

greet()
greet(name=”Alice”)
greet(message=”Goodbye”)
greet(name=”Bob”, message=”Goodbye”)

この関数は、2つの引数を受け取り、それらを表示するものです。デフォルト値が設定されているため、引数を指定せずに関数を呼び出すことができます。また、引数を指定する場合には、引数名を指定して任意の引数を指定できます。この場合、指定されなかった引数にはデフォルト値が使用されます。例えば、greet(name=”Alice”)と呼び出した場合、”Alice, Hello!”という文字列が表示されます。

また、引数の数が可変の場合は、アスタリスク(*)を引数の前につけることで可変長引数を受け取ることができます。以下は、可変長引数を受け取る関数の例です。

def add_numbers(*args):
result = 0
for number in args:
result += number
return result

print(add_numbers(1, 2, 3, 4, 5))

この関数は、複数の引数を受け取り、それらの合計値を返します。引数の数が可変であるため、アスタリスク(*)を引数の前につけています。上記の例では、1から5までの数値を引数として関数に渡し、それらを合計した値である15が出力されます。

返り値について


関数を呼び出すと、その関数から値が返される場合があります。返される値を「返り値 (return value)」と呼びます。

返り値は、関数が計算した結果を呼び出し元に返すことができます。関数が返す値は、return文を使って指定されます。return文が実行されると、その時点で関数の実行が終了し、返り値が呼び出し元に返されます。

以下は、返り値を持つ関数の例です。

def add(a, b):
c = a + b
return c

result = add(2, 3)
print(result) # 結果として 5 が表示される

この例では、add関数が呼び出され、引数2と3が渡されます。関数内で、aとbを足した結果をcに代入し、return cで返り値としてcを返します。その後、返り値が変数resultに代入され、print(result)によってresultの値である5が表示されます。

コメント

タイトルとURLをコピーしました