cleaned up double or

replaced slow string addition
This commit is contained in:
Daniel Oelschlegel 2014-05-01 21:10:27 +02:00
parent 31a33e35ce
commit 050e812214
10 changed files with 19 additions and 18 deletions

View File

@ -133,7 +133,7 @@ class BmpImageFile(ImageFile.ImageFile):
greyscale = 1
if colors == 2:
indices = (0, 255)
elif colors > 2**16 or colors <=0: #We're reading a i32.
elif not 0 < colors <= 2**16: #We're reading a i32.
raise IOError("Unsupported BMP Palette size (%d)" % colors)
else:
indices = list(range(colors))

View File

@ -102,7 +102,7 @@ class IcoFile:
Get an image from the icon
"""
for (i, h) in enumerate(self.entry):
if size == h['dim'] and (bpp == False or bpp == h['color_depth']):
if size == h['dim'] and bpp in (h['color_depth'], False):
return self.frame(i)
return self.frame(0)

View File

@ -134,7 +134,7 @@ class ImImageFile(ImageFile.ImageFile):
if s == b"\r":
continue
if not s or s == b'\0' or s == b'\x1A':
if not s or s in (b'\0', b'\x1A'):
break
# FIXME: this may read whole file if not a text file
@ -212,7 +212,7 @@ class ImImageFile(ImageFile.ImageFile):
linear = 0
else:
greyscale = 0
if self.mode == "L" or self.mode == "LA":
if self.mode in ("L", "LA"):
if greyscale:
if not linear:
self.lut = [i8(c) for c in palette[:256]]
@ -258,7 +258,7 @@ class ImImageFile(ImageFile.ImageFile):
def seek(self, frame):
if frame < 0 or frame >= self.info[FRAMES]:
if not 0 <= frame < self.info[FRAMES]:
raise EOFError("seek outside sequence")
if self.frame == frame:

View File

@ -272,12 +272,12 @@ def fit(image, size, method=Image.NEAREST, bleed=0.0, centering=(0.5, 0.5)):
if not isinstance(centering, list):
centering = [centering[0], centering[1]]
if centering[0] > 1.0 or centering[0] < 0.0:
if not 0.0 < centering[0] < 1.0:
centering [0] = 0.50
if centering[1] > 1.0 or centering[1] < 0.0:
if not 0.0 < centering[1] < 1.0:
centering[1] = 0.50
if bleed > 0.49999 or bleed < 0.0:
if not 0.0 < bleed < 0.49999:
bleed = 0.0
# calculate the area to use for resizing and cropping, subtracting

View File

@ -68,7 +68,7 @@ class IptcImageFile(ImageFile.ImageFile):
tag = i8(s[1]), i8(s[2])
# syntax
if i8(s[0]) != 0x1C or tag[0] < 1 or tag[0] > 9:
if i8(s[0]) != 0x1C or not 1 <= tag[0] <= 9:
raise SyntaxError("invalid IPTC/NAA file")
# field size

View File

@ -307,7 +307,7 @@ class JpegImageFile(ImageFile.ImageFile):
# self.__offset = self.fp.tell()
break
s = self.fp.read(1)
elif i == 0 or i == 65535:
elif i in (0, 65535):
# padded marker or junk; move on
s = "\xff"
else:

View File

@ -699,7 +699,7 @@ class _OleStream(io.BytesIO):
debug('sect=ENDOFCHAIN before expected size')
raise IOError('incomplete OLE stream')
# sector index should be within FAT:
if sect<0 or sect>=len(fat):
if not 0 <= sect < len(fat):
debug('sect=%d (%X) / len(fat)=%d' % (sect, sect, len(fat)))
debug('i=%d / nb_sectors=%d' %(i, nb_sectors))
## tmp_data = b"".join(data)
@ -920,7 +920,7 @@ class _OleDirectoryEntry:
if child_sid == NOSTREAM:
return
# check if child SID is in the proper range:
if child_sid<0 or child_sid>=len(self.olefile.direntries):
if not 0 <= child_sid < len(self.olefile.direntries):
self.olefile._raise_defect(DEFECT_FATAL, 'OLE DirEntry index out of range')
# get child direntry:
child = self.olefile._load_direntry(child_sid) #direntries[child_sid]
@ -1385,7 +1385,7 @@ class OleFileIO:
# The FAT is a sector chain starting at the first index of itself.
for isect in fat1:
#print("isect = %X" % isect)
if isect == ENDOFCHAIN or isect == FREESECT:
if isect in (ENDOFCHAIN, FREESECT):
# the end of the sector chain has been reached
break
# read the FAT sector
@ -1572,7 +1572,7 @@ class OleFileIO:
raise: IOError if the entry has always been referenced.
"""
# check if SID is OK:
if sid<0 or sid>=len(self.direntries):
if 0 <= sid < len(self.direntries):
self._raise_defect(DEFECT_FATAL, "OLE directory index out of range")
# check if entry was already referenced:
if self.direntries[sid] is not None:

View File

@ -555,8 +555,9 @@ def _save(im, fp, filename, chunk=putchunk, check=0):
if im.mode == "P":
palette_byte_number = (2 ** bits) * 3
palette_bytes = im.im.getpalette("RGB")[:palette_byte_number]
while len(palette_bytes) < palette_byte_number:
palette_bytes += b'\0'
diff = palette_byte_number - len(palette_bytes)
if diff > 0:
palette_bytes += b'\0' * diff
chunk(fp, b"PLTE", palette_bytes)
transparency = im.encoderinfo.get('transparency',im.info.get('transparency', None))

View File

@ -53,7 +53,7 @@ class SgiImageFile(ImageFile.ImageFile):
layout = i8(s[3]), i16(s[4:]), i16(s[10:])
# determine mode from bytes/zsize
if layout == (1, 2, 1) or layout == (1, 1, 1):
if layout in ((1, 2, 1), (1, 1, 1)):
self.mode = "L"
elif layout == (1, 3, 3):
self.mode = "RGB"

View File

@ -1043,7 +1043,7 @@ def _save(im, fp, filename):
unit = im.encoderinfo["resolution unit"]
if unit == "inch":
ifd[RESOLUTION_UNIT] = 2
elif unit == "cm" or unit == "centimeter":
elif unit in ("cm", "centimeter"):
ifd[RESOLUTION_UNIT] = 3
else:
ifd[RESOLUTION_UNIT] = 1