最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Python自制一個回收站清理器

 更新時間:2023年03月06日 10:55:22   作者:Python?集中營  
經(jīng)常筆記本電腦的回收站存儲了很多的文件,需要打開回收站全部選中進(jìn)行清理。這篇文章將使用Python自制一個回收站清理器,需要的可以參考一下

經(jīng)常筆記本電腦的回收站存儲了很多的文件,需要打開回收站全部選中進(jìn)行清理。

但是要是做成python自動化,再將其配置成定時任務(wù)就不需要再去手動操作了?;蛘呔褪侵苯与p擊運(yùn)行即可完成所有回收站的文件清理。

由于實現(xiàn)過程需要調(diào)用windows的終端命令,所以需要安裝winshell。然而有的小伙伴沒有安裝pypiwin32就會報錯沒有win32con模塊,因此,新的python環(huán)境安裝這兩個非標(biāo)準(zhǔn)庫就OK了。

pip?install?winshell

pip?install?pypiwin32

其實真正可以使用到的代碼塊只有一行,就是直接調(diào)用終端完成回收站的清理操作。try…catch只是為了捕獲異常,防止直接拋出。

#?It's?importing?the?winshell?module.
import?winshell

try:
????print('正在清理回收站所有文件......')

????#?It's?emptying?the?recycle?bin.
????winshell.recycle_bin().empty(confirm=False,?show_progress=False,?sound=True)

????print('回收站已經(jīng)清理完成!')
except:
????print('回收站已經(jīng)被清空,不需要操作!')

input("請按任意鍵關(guān)閉窗口...")

上述的代碼塊已經(jīng)能夠完成功能了,然后直接使用pyinstaller打包成exe,項目內(nèi)容較小這里直接采用單文件方式進(jìn)行打包。

pyinstaller?-F?-i?.\recycle.ico?.\recycle.py

程序打包完成后生成recycle.exe,可以修改成任意名稱.exe,雙擊執(zhí)行即可完成回收站清理。

recycle.exe

知識補(bǔ)充

除了上文,小編還給大家整理了用Python實現(xiàn)的其他實用小工具,希望對大家有所幫助

批量圖片格式轉(zhuǎn)換器

經(jīng)常在不同的工作場景中需要使用不同的圖片格式來完成相應(yīng)的操作,因此開發(fā)了這款批量轉(zhuǎn)換圖片格式的操作工具。

下文介紹的圖片轉(zhuǎn)換過程主要包含了四種圖片格式的相互轉(zhuǎn)換,分別是jpeg/jpg/png/bmp,通過獲取Image圖片對象從而保存為任意的圖片格式。

今天使用到的圖片處理庫就是PIL,不僅包含了強(qiáng)大的圖像處理能力,還可用于圖像歸檔/批量處理等方面。

pip?install?pillow

然后,直接將PIL模塊的Image模塊導(dǎo)入到我們的代碼塊中,注意這里安裝的名稱是pillow,但是導(dǎo)入的模塊名稱卻是PIL。

#?Importing?the?Image?module?from?the?PIL?package.
from?PIL?import?Image

#?`g`?is?a?generator?function?that?returns?a?generator?object.
from?loguru?import?logger

#?Importing?the?os?module.
import?os

定義一下該應(yīng)用能夠支持的圖片格式,如有其他圖片格式轉(zhuǎn)換需要可以在此處進(jìn)行擴(kuò)展。

#?A?list?of?image?formats?that?the?program?will?support.
images?=?['jpeg',?'jpg',?'bmp',?'png']

這里首先開發(fā)一個單個圖片格式轉(zhuǎn)換的函數(shù)transImage,最后在批量處理中調(diào)用該函數(shù)即可完成批量操作。

def?transImage(source_image=None,?target_type=None,?target_path=None):
????"""
????This?function?takes?an?image?and?converts?it?to?a?different?file?type

????:param?source_image:?The?image?you?want?to?convert
????:param?target_type:?The?type?of?image?you?want?to?convert?to
????"""
????if?source_image?is?None?or?target_type?is?None:
????????logger.error('源圖片路徑或目標(biāo)格式不能為空!')
????????return
????try:
????????img?=?Image.open(source_image)
????????base_name?=?os.path.basename(source_image)
????????target_image_path?=?os.path.join(target_path,?base_name.split('.')[0]?+?'.'?+?target_type)
????????img.save(target_image_path)
????????logger.info('當(dāng)前源圖片:{}格式轉(zhuǎn)換完成!'.format(source_image))
????except:
????????logger.error('當(dāng)前源圖片:{}格式轉(zhuǎn)換發(fā)生異常!'.format(source_image))

然后,開發(fā)一個批量圖片處理處理的函數(shù)main_batch,用于直接讀取某個文件夾下面的所有圖片執(zhí)行格式轉(zhuǎn)換。

def?main_batch(source_path=None,?target_type=None):
????"""
????This?function?takes?an?image?and?converts?it?to?a?different?file?type

????:param?source_image:?The?image?you?want?to?convert
????:param?target_type:?The?type?of?image?you?want?to?convert?to
????:return:?the?image?that?was?converted?to?a?different?file?type.
????"""
????if?source_path?is?None?or?target_type?is?None:
????????logger.info('源圖片批量文件夾路徑或目標(biāo)格式不能為空!')
????????return
????try:
????????for?file_name?in?os.listdir(source_path):
????????????source_file_type?=?file_name.split('.')[1]
????????????if?source_file_type?in?images?and?target_type?in?images:
????????????????transImage(os.path.join(source_path,?file_name),?target_type,?source_path)
????????????else:
????????????????logger.error('圖片格式不符合要求,請自行擴(kuò)展!')
????except:
????????logger.error('批量圖片格式轉(zhuǎn)換失敗,請檢查參數(shù)是否設(shè)置正確!')


#?Calling?the?main_batch?function?with?the?source_path?and?target_type?arguments.
main_batch(source_path='D:/test-data-work',?target_type='png')

python+win32com輕松完成批量Excel文件的加密!

在辦公的過程中面對一些重要數(shù)據(jù)的加密通常都能夠借助wps/office來完成,但是面對批量處理的時候還是有些麻煩。

下文主要說明如何使用python的三方模塊完成對Excel文件的批量加密操作。

其中主要使用到的三方模塊就是win32com,這里需要注意的是在安裝該庫的時候?qū)?yīng)的名稱是pywin32。

pip?install?pywin32

接下來,將需要的幾個python模塊都導(dǎo)入到代碼塊中進(jìn)行后續(xù)的業(yè)務(wù)開發(fā)。

#?It's?importing?the?win32com.client?module.
import?win32com.client

#?Importing?the?os?module.
import?os

from?loguru?import?logger

然后,開發(fā)一個單個文件的加密函數(shù)excel_set_password_one完成文件加密操作。

def?excel_set_password_one(source_file_path,?target_file_path,?password):
????"""
????It?takes?an?Excel?file,?sets?a?password?on?it,?and?saves?it?to?a?new?file.

????:param?source_file_path:?The?path?to?the?Excel?file?you?want?to?set?a?password?on
????:param?target_file_path:?The?path?to?the?file?you?want?to?save?the?password-protected?file?to
????:param?password:?the?password?you?want?to?set?for?the?excel?file
????"""

????excel?=?win32com.client.Dispatch("Excel.Application")

????#?It's?opening?the?Excel?file.
????wb?=?excel.Workbooks.Open(source_file_path,?False,?False,?None,?'')

????#?It's?turning?off?the?alert?that?pops?up?when?you?try?to?save?a?file?with?a?password.
????excel.DisplayAlerts?=?False

????#?It's?saving?the?file?to?a?new?file?with?a?password.
????wb.SaveAs(target_file_path,?None,?password,?'')

????#?It's?closing?the?Excel?application.
????excel.Quit()

單個excel文件加密過程開發(fā)完成之后,需要再創(chuàng)建一個函數(shù)batch_main可以完成批量執(zhí)行每個excel文件加密的操作。

def?batch_main(batch_dir,?password):
????"""
????This?function?takes?a?directory?of?files?and?a?password,?and?then?encrypts?all?the?files?in?the?directory?with?the
????password

????:param?batch_dir:?The?directory?where?the?batch?files?are?located
????:param?password:?The?password?to?use?for?the?encrypted?zip?file
????"""
????logger.info('批量處理Excel文件加密過程開始!')
????if?batch_dir?is?None?or?batch_dir.strip()?==?'':
????????logger.debug('批量處理的文件路徑不能為空!')
????????return
????if?password?is?None?or?password.strip()?==?'':
????????logger.debug('批量處理的文件加密路徑不能為空!')
????????return
????for?file_name?in?os.listdir(batch_dir):
????????if?file_name.__contains__('xlsx'):
????????????source_file_path?=?os.path.join(batch_dir,?file_name)
????????????target_file_path?=?os.path.join(batch_dir,?file_name.split('.')[0]?+?'_已加密.xlsx')
????????????excel_set_password_one(source_file_path,?target_file_path,?password)

????logger.info('批量處理Excel文件加密過程完成!')

最后一步,使用main函數(shù)調(diào)用批量文件加密的batch_main函數(shù)即可完成對所有該文件夾下面的文件加密。

if?__name__?==?'__main__':
????batch_main('D:/test-data-work',?'123456')

D:\Python\Python311\python.exe?D:\pycharm-projects\the-public\test020\test7.py
2023-01-19?10:35:36.799?|?INFO?????|?__main__:batch_main:64?-?批量處理Excel文件加密過程開始!
2023-01-19?10:35:40.529?|?INFO?????|?__main__:batch_main:77?-?批量處理Excel文件加密過程完成!

到此這篇關(guān)于使用Python自制一個回收站清理器的文章就介紹到這了,更多相關(guān)Python回收站清理器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python實現(xiàn)完整的事務(wù)操作示例

    Python實現(xiàn)完整的事務(wù)操作示例

    這篇文章主要介紹了Python實現(xiàn)完整的事務(wù)操作,結(jié)合實例形式分析了Python操作mysql數(shù)據(jù)庫相關(guān)事務(wù)操作的具體流程與實現(xiàn)技巧,需要的朋友可以參考下
    2017-06-06
  • Matplotlib實戰(zhàn)之面積圖繪制詳解

    Matplotlib實戰(zhàn)之面積圖繪制詳解

    面積圖,或稱區(qū)域圖,是一種隨有序變量的變化,反映數(shù)值變化的統(tǒng)計圖表,這篇文章主要介紹了如何利用Matplotlib實現(xiàn)面積圖的繪制,需要的可以參考下
    2023-08-08
  • python科學(xué)計算之narray對象用法

    python科學(xué)計算之narray對象用法

    今天小編就為大家分享一篇python科學(xué)計算之narray對象用法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • matplotlib繪圖實例演示標(biāo)記路徑

    matplotlib繪圖實例演示標(biāo)記路徑

    這篇文章主要介紹了matplotlib繪圖實例演示標(biāo)記路徑,分享了相關(guān)代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • Python Pandas讀寫txt和csv文件的方法詳解

    Python Pandas讀寫txt和csv文件的方法詳解

    這篇文章主要為大家詳細(xì)介紹了Python Pandas實現(xiàn)讀寫txt和csv文件查找的方法,文中的示例代碼積極性,感興趣的小伙伴可以跟隨小編一起了解一下
    2022-09-09
  • Python中shapefile轉(zhuǎn)換geojson的示例

    Python中shapefile轉(zhuǎn)換geojson的示例

    今天小編就為大家分享一篇關(guān)于Python中shapefile轉(zhuǎn)換geojson的示例,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • Windows安裝pycocotools的問題報錯解決

    Windows安裝pycocotools的問題報錯解決

    最近使用pip install安裝pycocotools出現(xiàn)錯誤,本文主要介紹了Windows安裝pycocotools的問題報錯解決,具有一定的參考價值,感興趣的可以了解一下
    2024-06-06
  • python實現(xiàn)跨年煙花動態(tài)效果

    python實現(xiàn)跨年煙花動態(tài)效果

    這篇文章主要介紹了python實現(xiàn)跨年煙花的動態(tài)效果,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2023-01-01
  • Jmeter如何使用BeanShell取樣器調(diào)用Python腳本

    Jmeter如何使用BeanShell取樣器調(diào)用Python腳本

    這篇文章主要介紹了Jmeter使用BeanShell取樣器調(diào)用Python腳本,文章圍繞Jmeter調(diào)用Python腳本的相關(guān)詳情展開標(biāo)題內(nèi)容,需要的小伙伴可以參考一下
    2022-03-03
  • 關(guān)于django 數(shù)據(jù)庫遷移(migrate)應(yīng)該知道的一些事

    關(guān)于django 數(shù)據(jù)庫遷移(migrate)應(yīng)該知道的一些事

    今天小編就為大家分享一篇關(guān)于django 數(shù)據(jù)庫遷移(migrate)應(yīng)該知道的一些事,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05

最新評論

呼和浩特市| 绥化市| 柘荣县| 绵阳市| 武威市| 临汾市| 衢州市| 喀喇沁旗| 河西区| 南宫市| 仁布县| 罗江县| 建德市| 红桥区| 小金县| 襄城县| 鄢陵县| 郸城县| 南京市| 佛坪县| 信阳市| 莒南县| 香港 | 明水县| 莫力| 伊金霍洛旗| 临江市| 芒康县| 金坛市| 石棉县| 晋州市| 桐乡市| 和平县| 平潭县| 安化县| 酒泉市| 天津市| 二连浩特市| 乐都县| 南乐县| 鲁山县|