自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

用 Python 快速找到最大的文件

開發(fā) 后端
現(xiàn)在的電腦差不多都是固態(tài)硬盤了,速度很快,但容量不會太大,經(jīng)常會出現(xiàn)磁盤空間不足的情況,怎么辦,刪除那些不重要的最大的文件是最有效的辦法。

 現(xiàn)在的電腦差不多都是固態(tài)硬盤了,速度很快,但容量不會太大,經(jīng)常會出現(xiàn)磁盤空間不足的情況,怎么辦,刪除那些不重要的最大的文件是最有效的辦法。

[[433659]]

那么如何用找到最大的文件呢?比如說找到最大的前 10 個文件?

思路:我們遍歷目錄,將文件路徑和文件大小作為生成器返回,然后插入大小為 10 的大頂堆,最后將大頂堆的內(nèi)容打印即可。

借助 Python,代碼很簡潔:

 

  1. import os 
  2. import time 
  3.  
  4. from os.path import join, getsize 
  5. from heapq import nlargest 
  6.  
  7.  
  8. def walk_files_and_sizes(start_at: str): 
  9.     for root, _, files in os.walk(start_at): 
  10.         for file in files: 
  11.             path = join(root, file) 
  12.             try: 
  13.                 size = getsize(path)  # bytes 
  14.                 yield path, size 
  15.             except OSError: 
  16.                 continue 
  17.  
  18.  
  19. def largest_files(n: int, start_at: str) -> None: 
  20.     MB = 1024 * 1024 
  21.     largest = nlargest(n, walk_files_and_sizes(start_at), key=lambda x: x[1]) 
  22.  
  23.     for path, size in largest: 
  24.         print(f'{size//MB} MB {path}'
  25.  
  26.  
  27.  
  28. if __name__ == '__main__'
  29.     start = time.perf_counter() 
  30.     largest_files(10, "/Users/aaron/"
  31.     elapsed = time.perf_counter() - start 
  32.     print(f'{elapsed} seconds elapsed'

我在自己電腦上跑了下,200 GB 左右的目錄,123 秒就跑完了:

 

 

 

 

接下來刪除不需要的文件就可以了。

如果是 Windows 系統(tǒng)也是可以的:

 

  1. largest_files(10, "C:/Users/xxx/"

最后的話

本文的方法非常實用,可以收藏,說不定那天,這個小工具就幫你解決了大問題。

責(zé)任編輯:華軒 來源: Python七號
相關(guān)推薦

2019-10-11 08:00:00

Linux命令最大文件

2021-02-03 10:43:54

Linux系統(tǒng)磁盤

2021-12-26 18:32:26

Python Heic 文件

2019-11-20 10:24:43

Linux重復(fù)文件磁盤

2019-11-20 10:23:51

磁盤WindowsLinux

2023-10-22 20:09:45

Linux命令

2023-09-04 10:10:47

插件頁面元素

2023-09-25 15:08:43

Python方離群值

2010-03-23 12:42:55

python快速支付接

2024-08-30 14:29:03

2012-05-29 21:25:32

iOS

2021-01-05 16:42:07

人工智能郵件機器學(xué)習(xí)

2021-01-17 16:26:19

JSONKey爬蟲

2010-12-30 16:11:10

Visual StudWindows部署VC++

2016-12-28 10:04:11

2010-09-29 12:15:40

2021-09-09 06:55:44

Python瀏覽器程序

2022-07-25 11:33:48

Python大文件

2024-07-02 08:28:17

開源代碼社區(qū)

2018-06-15 10:25:43

Python HTTPFTP服務(wù)器
點贊
收藏

51CTO技術(shù)棧公眾號