I have a py script that processes files with extension '.hgx'.Example : test.hgx ( there are many such files with extension hgx)
The script processes the test.hgx and creates a new test_bac.hgx and on re-run it creates test_bac_bac.hgx. So everytime running the script creates a file with '_bac'.
Is there some solution that I can use in my script that can delete all the existing '_bac' and '_bac_bac...' files before start of the actual code.
I am already using glob.glob function
for hgx in glob.glob("*.hgx"):
Can I use this function to delete these files 'X_bac.hgx' and other _bac_bac..hgx files?
Any help/idea would be appreciated.
Thanks
Using the os module in python To use the os module to delete a file, we import it, then use the remove() function provided by the module to delete the file. It takes the file path as a parameter. You can not just delete a file but also a directory using the os module.
In Python, you can use the os. remove() method to remove files, and the os. rmdir() method to delete an empty folder. If you want to delete a folder with all of its files, you can use the shutil.
import os
import glob
for hgx in glob.glob("*_bac.hgx"):
os.remove(hgx)
A very similar solution would be
import os
import glob
map(os.remove, glob.glob("*_back.hgx"))
But besides having a slightly more compact expression, you save one variable name in the current namespace.
glob.glob("*_bac.hgx")
will get you the files. You can then use the os.remove
function to delete the file in your loop.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With