SORU
3 Ocak 2010, Pazar


Ya da Python dizinine kopyalayın

Python dosya kopyalama fonksiyonları (örneğin shutil.var gibi görünüyor kopyalama ve kopyalama dizinleri (örneğin shutil.fonksiyonları copytree) ama işleyen herhangi bir fonksiyon bulamadım. Elbette, önemsiz bir dosya veya dizini kopyalamak istediğiniz olup olmadığını kontrol etmek için, ama garip bir eksiklik gibi görünüyor.

Gerçekten unıx gibi çalışan standart bir işlevi yoktur "" komutu, yani destekler hem dizinleri ve dosyaları? cp Python bu soruna geçici bir çözüm bulmak için en zarif yolu nedir?

edit: dediğim Zaman "" yani "- r". cp cp Bunun için üzgünüm. Ve herhangi bir dizin kopyalamak istiyorum özyinelemeli (" ve shutil. "- r cp gibi copytree yok).

CEVAP
3 Ocak 2010, Pazar


İlk shutil.copytree, ve eğer bir özel durum oluşursa, o zaman shutil.copy ile yeniden dene derim.

import shutil, errno

def copyanything(src, dst):
    try:
        shutil.copytree(src, dst)
    except OSError as exc: # python >2.5
        if exc.errno == errno.ENOTDIR:
            shutil.copy(src, dst)
        else: raise

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • EmmightySofia

    EmmightySofi

    25 EYLÜL 2011
  • kidrauhl

    kidrauhl

    15 Ocak 2007
  • Submissions101

    Submissions1

    23 ŞUBAT 2007