regular expressions eliminating filenames of type foo.thumbnail.jpg

attn.steven.kuo at gmail.com attn.steven.kuo at gmail.com
Tue Jun 26 00:11:58 EDT 2007


On Jun 25, 2:41 pm, oscartheduck <oscarthed... at gmail.com> wrote:
> I eventually went with:
>
> #!/usr/bin/env python
> from PIL import Image
> import glob, os, re
>
> size = 128, 128
>
> def thumbnailer(dir, filenameRx):
>      for picture in [ p for p in os.listdir(dir) if
> os.path.isfile(os.path.join(
>  dir,p)) and filenameRx.match(p) if 'thumbnail' not in p]:
>          file, ext = os.path.splitext(picture)


(snipped)

Or, one can forego regular expressions:

prefix = '.thumbnail'
for p in os.listdir(dir):
    root, ext = os.path.splitext(p)
    if not os.path.isfile(os.path.join(dir, p)) \
    or ext.lower() not in ('.jpg', '.jpeg') \
    or root[-10:].lower() == prefix:
        continue
    if os.path.isfile(os.path.join(dir, "%s%s%s"  % (root, prefix,
ext))):
        print "A thumbnail of %s already exists" % p
    else:
        print "Making a thumbnail of %s" % os.path.join(dir, "%s%s%s"
%
        (root, prefix, ext))


--
Hope this helps,
Steven




More information about the Python-list mailing list