Python 3.9では、新たに導入されたmatch文を使用することはできません。match文はPython 3.10からの新機能で、条件分岐をより直感的に記述することが可能になりました。
しかし、Python 3.9を使用している場合でも、match文と同様の機能を実現する方法があります。それは、Pythonの辞書を使用する方法です。
以下に、Python 3.9でmatch文の代わりに辞書を使用して条件分岐を行うコードを示します。
MATCH = {
'.pkl': df.to_pickle,
'.csv': df.to_csv
}
_, ext = os.path.splitext(filename)
try:
MATCH[ext](filepath)
except KeyError:
raise NotImplementedError(f"Saving as {ext}-files not implemented.")
このコードでは、ファイルの拡張子に応じて適切な関数を呼び出すことができます。Python 3.9を使用している場合でも、このように工夫することでmatch文と同様の機能を実現することが可能です。
ただし、Python 3.10以降を使用することで、より直感的に条件分岐を記述することが可能になります。そのため、可能であればPythonのバージョンをアップデートすることをお勧めします。