百科问答小站 logo
百科问答小站 font logo



Python中如果判断一个文件是不是jpg的图片? 第1页

  

user avatar   zhu-ge-ge-hen-you-yi-si 网友的相关建议: 
      
       def detect_picture(file):     """     检测图片的类型     :param file: 路径     :return:      """     # 读取前 32 个字节     data = open(file, "rb").read(32)      if data[6:10] in (b'JFIF', b'Exif'):         return 'jpeg'      elif data.startswith(b'211PNG
32
'):         return 'png'      elif data[:6] in (b'GIF87a', b'GIF89a'):         return 'gif'      elif data[:2] in (b'MM', b'II'):         return 'tiff'      elif data.startswith(b'01332'):         return 'rgb'      elif len(data) >= 3 and data[0] == ord(b'P') and data[1] in b'14' and data[2] in b' 	

':         return 'pbm'      elif len(data) >= 3 and data[0] == ord(b'P') and data[1] in b'25' and data[2] in b' 	

':         return 'pgm'      elif len(data) >= 3 and data[0] == ord(b'P') and data[1] in b'36' and data[2] in b' 	

':         return 'ppm'      elif data.startswith(b'x59xA6x6Ax95'):         return 'rast'      elif data.startswith(b'#define '):         return 'xbm'      elif data.startswith(b'BM'):         return 'bmp'      elif data.startswith(b'RIFF') and data[8:12] == b'WEBP':         return 'webp'      elif data.startswith(b'x76x2fx31x01'):         return 'exr'      else:         return None     

建立了一个微信公众号:古明地觉的 Python小屋,求关注一波,会不断介绍很多关于 Python 的硬核知识。本来想放二维码的,但是知乎总是不显示。




  

相关话题

  一行代码可以做什么? 
  在大型项目上,Python 是个烂语言吗? 
  Python如何实现list元素的两两相加并返回最大值? 
  为什么 Dropbox 等大型服务使用 Python 作为主要语言,即使它的效率比其他编译型语言低几个数量级? 
  各种语言写网络爬虫有什么优点缺点? 
  为什么很多程序员不用 switch,而是大量的 if...else if ...? 
  一行代码可以做什么? 
  Python 3.10 发布文档的最后一段“黑洞”描写在表达什么? 
  非计算机系学Python有什么建议? 
  如何学习Python,以及新手如何入门? 

前一个讨论
30岁没有谈过恋爱的男孩是一种什么样的体验?
下一个讨论
目标检测该怎么学呀,目前研一,老师啥也不会,感觉毕不了业了?





© 2025-02-05 - tinynew.org. All Rights Reserved.
© 2025-02-05 - tinynew.org. 保留所有权利