Pythonでファイルを扱う際、ファイル名にハイフン(-)が含まれる場合、意図した通りに動作しないことがあります。この問題を解決するためには、以下の2つの方法があります。

1. ファイル名をクォートする

ファイル名をクォートすることで、ハイフンを含むファイル名を正しく扱うことができます。以下は例です。

import os

filename = "-example-file.txt"
quoted_filename = "'" + filename + "'"
os.system("touch " + quoted_filename)

このように、ファイル名をクォートすることで、touchコマンドでファイルを作成することができます。

2. pathlibモジュールを使用する

Python 3.4からは、pathlibモジュールが標準ライブラリに含まれるようになりました。pathlibモジュールを使用することで、以下のようにハイフンを含むファイル名を扱うことができます。

from pathlib import Path

filename = "-example-file.txt"
path = Path(filename)
path.touch()

このように、pathlibモジュールを使用することで、より簡潔なコードでファイルを作成することができます。