Cara Mengira Saiz Direktori dalam Python: Perbandingan Kaedah

Susan Sarandon
Lepaskan: 2024-11-01 14:03:02
asal
955 orang telah melayarinya

How to Calculate Directory Sizes in Python: A Comparison of Methods

Mengira Saiz Direktori dengan Python

Sebelum memulakan pelaksanaan tersuai, adalah wajar untuk meneroka sama ada penyelesaian sedia ada boleh menyelaraskan tugas menentukan saiz direktori.

Cadangan Penyelesaian Menggunakan os.walk

Rutin Python berikut dengan cekap berjalan melalui sub-direktori dan mengumpul saiz setiap fail:

<code class="python">import os

def get_size(start_path='.'):
    total_size = 0
    for dirpath, dirnames, filenames in os.walk(start_path):
        for f in filenames:
            fp = os.path.join(dirpath, f)
            # Skip symbolic links
            if not os.path.islink(fp):
                total_size += os.path.getsize(fp)
    return total_size

print(get_size(), 'bytes')</code>
Salin selepas log masuk

Alternatif Satu Pelapik Menggunakan os.listdir

Untuk pendekatan yang lebih pantas dan ringkas yang mengecualikan subdirektori, pertimbangkan satu baris berikut:

<code class="python">import os
sum(os.path.getsize(f) for f in os.listdir('.') if os.path.isfile(f))</code>
Salin selepas log masuk

Rujukan dan Pengoptimuman Selanjutnya

Untuk maklumat lanjut, rujuk sumber berikut:

  • os.path.getsize: Memperoleh saiz fail dalam bait
  • os.path.islink: Mengesan pautan simbolik
  • os.path.stat().st_size: Kaedah mendapatkan semula saiz fail alternatif
  • Pakej scandir: Menawarkan kaedah yang cekap kaedah berjalan
  • Modul pathlib: Untuk penyelesaian yang lebih ringkas dan serba boleh

Dengan memilih kod sedia ada, anda boleh mempercepatkan proses pembangunan anda sambil memastikan ketepatan dalam mengira saiz direktori.

Atas ialah kandungan terperinci Cara Mengira Saiz Direktori dalam Python: Perbandingan Kaedah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!