Pythonでは、複数の関数が書かれたファイル(.py)を別ファイルに分割し、それを呼び出すことができます。これにより、コードの可読性が向上し、保守性も高まります。
ファイル分割の手順
- 移動したい関数を別のファイル(.py)にカット&ペーストします。
- 元のファイルで、
import ファイル名
を記述します。ここで、ファイル名は拡張子(.py)を除きます。
モジュールの使用方法
モジュール名.関数名()の形式で関数を呼び出します。ここでも、関数名の前にモジュール名をつけ、拡張子(.py)は不要です。
この手順により、作成したファイルがモジュールとなり、ファイル名(.pyを除く)がモジュール名になります。
例
以下に、具体的な例を示します。
モジュール化前のファイル
def konchiwa(name):
print(f'{name}さん、こんにちは!')
def birthdayDog(name, age="24"):
print(f'{name}さん、{age}歳のお誕生日おめでとうございます。')
dogyear = age * 7
print(f'{name}さんのdogyearは{dogyear}歳です')
def validate(age):
if age < 10:
return False
return True
ファイル分割(モジュール化)
挨拶をする関数を分割
def konchiwa(name):
print(f'{name}さん、こんにちは!')
ドッグイヤーを求める関数を分割
def birthdayDog(name, age="24"):
print(f'{name}さん、{age}歳のお誕生日おめでとうございます。')
dogyear = age * 7
print(f'{name}さんのdogyearは{dogyear}歳です')
モジュールの読み込み
import hello
import dog
name = input('お名前を教えてください:')
hello.konchiwa(name)
age = int(input('\n年齢を教えてください:'))
if dog.validate(age):
dog.birthdayDog(name, age)
else:
print('正しい年齢を入力してください')
以上がPythonで関数を別ファイルに分ける方法です。この方法を活用することで、コードの管理が容易になります。