open on the source file is unnecessary, since
os.rename only needs the source and destination paths to get the job done. Moreover,
os.rename always returns
None, so it doesn’t make sense to call
open on its return value.
import os import sys folder="E:/.../1936342-G/test" for filename in os.listdir(folder): infilename = os.path.join(folder,filename) if not os.path.isfile(infilename): continue oldbase = os.path.splitext(filename) newname = infilename.replace('.grf', '.las') output = os.rename(infilename, newname)
I simply removed the two
open. Check if this works for you.