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

  • André Frizzo

    André Frizz

    16 Aralık 2006
  • BuzzFeedVideo

    BuzzFeedVide

    10 AĞUSTOS 2011
  • justintimberlakeVEVO

    justintimber

    2 EYLÜL 2009