Pillow is the general choice for photos and scans: open, convert and save TIFF, iterate pages, read and write tags, choose LZW, Deflate, JPEG or Group 4 compression.
tifffile reads and writes TIFF as NumPy arrays. Pick it for scientific data: 16/32-bit and floating point, many channels, BigTIFF, tiles, OME-TIFF, ImageJ hyperstacks and files larger than memory (through Zarr).
rasterio reads and writes GeoTIFF with its coordinate system and transform, on top of GDAL. Pick it for maps and satellite images.
PillowPillow reads and writes TIFF in Python. How to install it, convert TIFF, iterate pages, save multi-page and compressed TIFF, and read and write TIFF tags.
rasteriorasterio reads and writes GeoTIFF in Python on top of GDAL. How to install it, read bands and georeferencing, write a compressed GeoTIFF.
tifffiletifffile reads and writes TIFF, BigTIFF and OME-TIFF as NumPy arrays in Python. How to install it, read and write images, iterate pages, read tags.