Nie wiem jakie jest pytanie :)
Kilka szybkich uwag:
if not path.endswith("/") or not path.endswith("\\"):
path += "/";
Polecam zapoznanie się z os.path.join lub nowszym pathlib.Path.
open(some_path, "w", -1, "utf-8")
=>
open(some_path, "w", encoding="utf-8")
if len(filelists):
=>
if filelists:
list(os.walk(path))[0][2]
Tu z kolei polecam glob().
if os.path.exists(path + file1):
Po co, jeśli wiesz że taki plik istnieje skoro wyszedł z os.walk?