# `imghdr` — 이미지 유형 판단

소스 코드: Lib/imghdr.py

`imghdr` 모듈은 파일이나 바이트 스트림에 포함된 이미지의 유형을 판단합니다.

`imghdr` 모듈은 다음 함수를 정의합니다:

`imghdr.``what`(filename, h=None)

  filename으로 이름이 지정된 파일에 포함된 이미지 데이터를 검사하고, 이미지 유형을 설명하는 문자열을 반환합니다. 선택적 h가 제공되면, filename는 무시되고 h가 검사할 바이트 스트림을 포함한다고 가정합니다.

  버전 3.6에서 변경: 경로류 객체를 받아들입니다.

아래에 `what()`의 반환 값과 함께 나열된 것처럼, 다음과 같은 이미지 유형을 인식합니다:

값 | 이미지 형식
--- | ---
`'rgb'` | SGI ImgLib 파일
`'gif'` | GIF 87a 과 89a 파일
`'pbm'` | Portable Bitmap 파일
`'pgm'` | Portable Graymap 파일
`'ppm'` | Portable Pixmap 파일
`'tiff'` | TIFF 파일
`'rast'` | Sun Raster 파일
`'xbm'` | X Bitmap 파일
`'jpeg'` | JFIF 나 Exif 형식의 JPEG 데이터
`'bmp'` | BMP 파일
`'png'` | Portable Network Graphics
`'webp'` | WebP 파일
`'exr'` | OpenEXR 파일

버전 3.5에 추가: exr 과 webp 형식이 추가되었습니다.

이 변수에 추가해서 `imghdr`가 인식할 수 있는 파일 유형 목록을 확장할 수 있습니다:

`imghdr.``tests`

  개별검사를 수행하는 함수 리스트. 각 함수는 두 개의 인자를 받아들입니다: 바이트 스트림과 열린 파일류 객체. `what()`이 바이트 스트림으로 호출되면, 파일류 객체는 `None`이 됩니다.

  검사 함수는 검사가 성공하면 이미지 유형을 설명하는 문자열을 반환하고, 실패하면 `None`을 반환해야 합니다.

예제:

    >>> import imghdr
    >>> imghdr.what('bass.gif')
    'gif'