logo

Python | shutil.copyfile() -menetelmä

Shutil-moduuli Pythonissa auttaa automatisoimaan prosessin tiedostojen kopioiminen ja poistaminen ja hakemistoja. Se tulee Pythonin vakioapumoduulien alle.

Shutil (lyhenne sanoista shell utility) -moduuli tarjoaa myös monia toimintoja korkean tason toimintoihin tiedostoille ja tiedostokokoelmille.



Mikä on Shutil.copyfile()-menetelmä?

The shutil.copyfile() menetelmä sisään Python käytetään kopioimaan lähdetiedoston sisältö kohdetiedostoon. Tiedoston metatietoja ei kopioida. Lähteen ja kohteen tulee edustaa tiedostoa ja kohteen on oltava kirjoitettava. Jos kohde on jo olemassa, se korvataan lähdetiedostolla, muuten luodaan uusi tiedosto.

Jos lähde ja kohde edustavat samaa tiedostoa, SameFileError poikkeus nostetaan.

shutil.copyfile() Menetelmän syntaksi

shutil.copyfile(lähde, kohde, *, follow_symlinks = tosi)



Parametrit:

  • lähde : Merkkijono, joka edustaa lähdetiedoston polkua.
  • määränpäähän : Merkkijono, joka edustaa kohdetiedoston polkua.
  • follow_symlinks (valinnainen) : Tämän parametrin oletusarvo on True. Jos False ja lähde edustaa symbolista linkkiä, uusi symbolinen linkki luodaan tiedoston kopioimisen sijaan.

Huomautus: Parametriluettelon '*' osoittaa, että kaikki seuraavat parametrit (tässä tapauksessa 'follow_symlinks') ovat vain avainsanaparametreja ja ne voidaan antaa käyttämällä niiden nimeä, ei sijaintiparametreina.

Palautukset:

Tämä menetelmä palauttaa merkkijonon, joka edustaa juuri luodun tiedoston polkua.

Tiedoston kopioiminen Shutil.copyfile()-menetelmällä Pythonissa

Shutil.copyfile()-menetelmällä voit helposti kopioida tiedoston uuteen tiedostoon. Jotta voit käyttää tätä menetelmää, sinun on vain mainittava lähdetiedoston sijainti ja kohdetiedoston sijainti.



Ymmärrämme asiaa paremmin esimerkin avulla:

Etsi kartalta c++

Shutil.copyfile()-menetelmän käyttö tiedoston kopioimiseen lähteestä kohteeseen

Tässä esimerkissä näemme shutil.copyfile()-funktion käytön tiedoston kopioimiseen lähteestä kohteeseen Pythonilla.

Python 3




# Python program to explain shutil.copyfile() method> # importing os module> import> os> # importing shutil module> import> shutil> # path> path>=> '/home/User/Documents'> # List files and directories> # in '/home/User/Documents'> print>(>'Before copying file:'>)> print>(os.listdir(path))> # Source path> source>=> '/home/User/Documents/file.txt'> # Destination path> destination>=> '/home/User/Documents/file(copy).txt'> # Copy the content of> # source to destination> dest>=> shutil.copyfile(source, destination)> # List files and directories> # in '/home / User / Documents'> print>(>'After copying file:'>)> print>(os.listdir(path))> # Print path of newly> # created file> print>(>'Destination path:'>, dest)>

>

>

Lähtö:

Tässä näkyy Mahdollisia virheitä käytettäessä shutil.copyfile() -menetelmää. Jos lähde ja kohde edustavat samaa tiedostoa 'SameFileError' poikkeus nostetaan Jos kohde on hakemisto niin 'IsADirectoryError' poikkeus nostetaan Jos kohde ei ole kirjoitettava 'PermissionError' poikkeus nostetaan Python3 # Python-ohjelma selittää shutil .copyfile()-metodi # tuonti shuttil-moduulin tuonti shutil # Lähdepolku lähde = '/home/User/Documents/file.txt' # Kohdepolku kohde = '/home/User/Documents/file.txt' # Kopioi # lähteen sisältö kohteeseen shutil.copyfile(lähde, kohde) Tulos: Traceback (viimeisin puhelu viimeisin): Tiedosto 'copy.py', rivi 31, shutil.copyfile(lähde, kohde) Tiedosto ' /usr/lib/python3.6/shutil.py', rivi 104, copyfile raise SameFileError('{!r} ja {!r} ovat sama tiedosto'.format(src, dst)) shutil. SameFileError: '/home/User/Documents/file.txt' ja '/home/User/Documents/file.txt' ovat sama tiedosto Kohdepolku: /home/User/Documents/file(kopio). txt-virheiden käsittely Tässä käsittelemme virheitä, kun käytetään shutil.copyfile()-menetelmää. Python3 # Python-ohjelma, joka selittää shutil.copyfile() -menetelmän # shutil-moduulin tuonti tuonti shutil # Lähdepolku lähde = '/home/User/Documents/file.txt' # Kohdepolku kohde = '/home/User/Documents ' # Kopioi # lähteen sisältö kohteeseen kokeile: shutil.copyfile(lähde, kohde) print('Tiedosto kopioitiin onnistuneesti.') # Jos lähde ja kohde ovat samat paitsi shutil.SameFileError: print('Lähde ja kohde edustaa samaa tiedostoa.') # Jos kohde on hakemisto. paitsi IsADirectoryError: print('Kohde on hakemisto.') # Jos on jokin lupaongelma paitsi PermissionError: print('Permission denied.') # Muille virheille paitsi: print('Tiedostoa kopioitaessa tapahtui virhe .') Tulos: Kohde on hakemisto. Olemme käsitelleet tiedoston kopioimisen Pythonissa käyttämällä shutil.copyfile()-funktiota. Se on erittäin helppokäyttöinen menetelmä, jolla voit kopioida tiedoston. Se on erittäin hyödyllinen, kun haluat luoda kaksoiskappaleen. Lue myös: Kuinka kopioida tiedosto Python3:ssa? shutil.copy()-metodi Kopioi tiedoston sisältö toiseen tiedostoon Kopioi kaikki tiedostot hakemistosta toiseen Pythonilla Kuinka luodaan olemassa olevasta tiedostosta kaksoiskappale Pythonilla?>>