欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

利用Python批量壓縮png方法實(shí)例(支持過濾個別文件與文件夾)

 更新時間:2017年07月30日 10:27:05   投稿:daisy  
這篇文章主要給大家介紹了關(guān)于利用Python批量壓縮png的相關(guān)資料,文中介紹的方法支持過濾個別文件與文件夾,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面跟著小編來一起看看吧。

前言

本文主要給大家介紹的關(guān)于Python批量壓縮png的相關(guān)資料,分享出來供大家參考學(xué)習(xí),下面話不多說了,來一起看看詳細(xì)的介紹:

1.需求

為什么會有這個需求?是因為游戲的資源大多是png圖片,需要壓縮,但是有些圖片和文件夾里的圖片,美術(shù)不想壓縮,比如一些帶透明度的光圈或者游戲的主要元素。所以要過濾下。發(fā)現(xiàn)python這個語言比較適合用在這個場景。所以寫了點(diǎn)python.

2.源碼

import os,sys
import os.path
rootdir=sys.path[0]
 
#需要過濾的文件
notActionFile = ["choose_bg1.png"]
#需要過濾的文件夾
notActionPath = ["test"]
 
#需要刪除的文件
needDeleteFile = ["s2.png"]
 
def file_extension(path): 
 return os.path.splitext(path)[1] 
 
for parent,dirnames,filenames in os.walk(rootdir):
 for filename in filenames:
  fullPath = os.path.join(parent,filename)
  #刪除文件
  for deleteFile in needDeleteFile:
   if filename == deleteFile:  
    os.remove(fullPath)    
  isFilter = False
  #過濾文件壓縮
  for noActionName in notActionFile: 
   if noActionName == filename:
    isFilter = True
  #過濾文件夾壓縮    
  for onePath in notActionPath:
   lastPath = fullPath.split('\\')[-2]
   if lastPath == onePath:
    isFilter = True      
  if file_extension(fullPath) == ".png" and isFilter == False:
   #print "action"  
   os.system("pngquant -f --ext .png --quality 50-80 \"" + fullPath + "\"")
   print fullPath

用的是pngquant來壓縮。

完整項目下載地址:http://xiazai.jb51.net/201707/yuanma/compressImage(jb51.net).rar

使用方法,就是復(fù)制這2個文件到需要壓縮的文件夾下面,然后執(zhí)行python main.py

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持

相關(guān)文章

  • Windows上使用Python增加或刪除權(quán)限的方法

    Windows上使用Python增加或刪除權(quán)限的方法

    下面小編就為大家分享一篇Windows上使用Python增加或刪除權(quán)限的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • 基于Keras 循環(huán)訓(xùn)練模型跑數(shù)據(jù)時內(nèi)存泄漏的解決方式

    基于Keras 循環(huán)訓(xùn)練模型跑數(shù)據(jù)時內(nèi)存泄漏的解決方式

    這篇文章主要介紹了基于Keras 循環(huán)訓(xùn)練模型跑數(shù)據(jù)時內(nèi)存泄漏的解決方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨想過來看看吧
    2020-06-06
  • 使用python實(shí)現(xiàn)語音文件的特征提取方法

    使用python實(shí)現(xiàn)語音文件的特征提取方法

    今天小編就為大家分享一篇使用python實(shí)現(xiàn)語音文件的特征提取方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • socket連接關(guān)閉問題分析

    socket連接關(guān)閉問題分析

    socket建立連接的時候是三次握手,這個大家都很清楚,但是socket關(guān)閉連接的時候,需要進(jìn)行四次揮手,但很多人對于這四次揮手的具體流程不清楚,吃了很多虧,本文來為大家進(jìn)行分析
    2022-01-01
  • 如何在Python中用好短路機(jī)制

    如何在Python中用好短路機(jī)制

    這篇文章主要介紹了如何在Python中用好短路機(jī)制,Python中的短路機(jī)制非常有用,跟很多其他編程語言中的短路機(jī)制作用類似,接下來讓我們通過幾個簡單的例子總結(jié)Python中可用的幾種短路機(jī)制,需要的朋友可以參考下
    2022-02-02
  • Python使用pyppeteer進(jìn)行網(wǎng)頁截圖并發(fā)送機(jī)器人實(shí)例

    Python使用pyppeteer進(jìn)行網(wǎng)頁截圖并發(fā)送機(jī)器人實(shí)例

    這篇文章主要介紹了Python使用pyppeteer進(jìn)行網(wǎng)頁截圖并發(fā)送機(jī)器人實(shí)例,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • python模仿網(wǎng)頁版微信發(fā)送消息功能

    python模仿網(wǎng)頁版微信發(fā)送消息功能

    這篇文章主要介紹了python模仿網(wǎng)頁版微信發(fā)送消息功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • Python 實(shí)現(xiàn)自動化Excel報表的步驟

    Python 實(shí)現(xiàn)自動化Excel報表的步驟

    這篇文章主要介紹了Python 實(shí)現(xiàn)自動化Excel報表的步驟,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-04-04
  • Django環(huán)境下使用Ajax的操作代碼

    Django環(huán)境下使用Ajax的操作代碼

    AJAX 的主要目標(biāo)是在不刷新整個頁面的情況下,通過后臺與服務(wù)器進(jìn)行數(shù)據(jù)交換和更新頁面內(nèi)容,通過 AJAX,您可以向服務(wù)器發(fā)送請求并接收響應(yīng),然后使用 JavaScript 動態(tài)地更新頁面的部分內(nèi)容,這篇文章主要介紹了Django環(huán)境下使用Ajax,需要的朋友可以參考下
    2024-03-03
  • Python用戶推薦系統(tǒng)曼哈頓算法實(shí)現(xiàn)完整代碼

    Python用戶推薦系統(tǒng)曼哈頓算法實(shí)現(xiàn)完整代碼

    這篇文章主要介紹了Python用戶推薦系統(tǒng)曼哈頓算法實(shí)現(xiàn)完整代碼,簡單介紹了曼哈頓距離的定義,然后分享了其Python實(shí)現(xiàn)代碼,具有一定借鑒價值,需要的朋友可以了解下。
    2017-12-12

最新評論