H
hokiegal99
Hi,
I have a working Python script that renames files that don't currently
have PC based file extensions. For example, if there is a MS Word file
that does not have '.doc' on the end of it, the script will append
that. The script also knows to *not* add an extension if the file
already has one. Bascially, here's how I'm doing it:
for fname in files:
doc_id = string.find(file(os.path.join(root,fname),
'rb').read(), 'Word.Document.')
doc_skip = string.find(fname,'.doc')
DOC_skip = string.find(fname,'.DOC')
if doc_id >=1 and doc_skip ==-1 and DOC_skip ==-1:
newpath = os.path.join(root,doc_new)
oldpath = os.path.join(root,fname)
os.renames(oldpath,newpath)
The problem I'm having is that as I add more and more file types to
the script I have to define more and more 'xxx_skip' variables. My
'if' conditionals are growing larger and larger. Which leads to my
question: How could I define it so that *any* file that already has a
'.xxx' extension (where x = 'abcdefghijklmnopqrstuvwxyz' upper and
lowercase) would be excluded from the rename? I've considered
something like this:
ext = re.compile('[abcdefghijklmnopqrstuvwxyz]', re.IGNORECASE)
But I don't know how to pull 'ext' into something like this:
ext_skip = string.find(fname,'.xxx')
Any ideas?
TIA!!!
I have a working Python script that renames files that don't currently
have PC based file extensions. For example, if there is a MS Word file
that does not have '.doc' on the end of it, the script will append
that. The script also knows to *not* add an extension if the file
already has one. Bascially, here's how I'm doing it:
for fname in files:
doc_id = string.find(file(os.path.join(root,fname),
'rb').read(), 'Word.Document.')
doc_skip = string.find(fname,'.doc')
DOC_skip = string.find(fname,'.DOC')
if doc_id >=1 and doc_skip ==-1 and DOC_skip ==-1:
newpath = os.path.join(root,doc_new)
oldpath = os.path.join(root,fname)
os.renames(oldpath,newpath)
The problem I'm having is that as I add more and more file types to
the script I have to define more and more 'xxx_skip' variables. My
'if' conditionals are growing larger and larger. Which leads to my
question: How could I define it so that *any* file that already has a
'.xxx' extension (where x = 'abcdefghijklmnopqrstuvwxyz' upper and
lowercase) would be excluded from the rename? I've considered
something like this:
ext = re.compile('[abcdefghijklmnopqrstuvwxyz]', re.IGNORECASE)
But I don't know how to pull 'ext' into something like this:
ext_skip = string.find(fname,'.xxx')
Any ideas?
TIA!!!