logo

Python | shutil.copyfile() metode

Shutil modulis Python palīdz automatizēt procesu failu kopēšana un noņemšana un katalogi. Tas ietilpst Python standarta utilīta moduļos.

Shutil (saīsinājums no shell utilīta) modulis nodrošina arī daudzas augsta līmeņa operāciju funkcijas ar failiem un failu kolekcijām.

Kas ir Shutil.copyfile() metode?

The shutil.copyfile() metode iekšā Python tiek izmantots, lai kopētu avota faila saturu mērķa failā. Faila metadati netiek kopēti. Avotam un galamērķim ir jāatspoguļo fails, un galamērķim ir jābūt rakstāmam. Ja galamērķis jau pastāv, tas tiks aizstāts ar avota failu, pretējā gadījumā tiks izveidots jauns fails.



Ja avots un galamērķis ir viens un tas pats fails, tad SameFileError izņēmums tiks paaugstināts.

shutil.copyfile() Metodes sintakse

shutil.copyfile(avots, galamērķis, *, follow_symlinks = True)

Parametri:

  • avots : virkne, kas attēlo avota faila ceļu.
  • galamērķis : virkne, kas apzīmē mērķa faila ceļu.
  • sekot_symlinks (neobligāti) : šī parametra noklusējuma vērtība ir True. Ja False un avots ir simboliska saite, faila kopēšanas vietā tiks izveidota jauna simboliskā saite.

Piezīme: “*” parametru sarakstā norāda, ka visi tālāk norādītie parametri (šeit mūsu gadījumā “follow_symlinks”) ir tikai atslēgvārdu parametri, un tos var nodrošināt, izmantojot to nosaukumu, nevis kā pozicionālos parametrus.

Atgriež:

Šī metode atgriež virkni, kas apzīmē jaunizveidotā faila ceļu.

Kā kopēt failu, izmantojot Shutil.copyfile() metodi programmā Python

Izmantojot metodi shutil.copyfile(), varat viegli kopēt failu jaunā failā. Lai izmantotu šo metodi, vienkārši jānorāda avota faila atrašanās vieta un mērķa faila atrašanās vieta.

Izpratīsim to labāk ar piemēru:

konstruktori java

Shutil.copyfile() metodes izmantošana, lai kopētu failu no avota uz galamērķi

Šajā piemērā mēs redzēsim shutil.copyfile() izmantošanu, lai kopētu failu no avota uz galamērķi, izmantojot Python.

Python3




# 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)>

>

>

Izvade:

Šeit mēs redzam Iespējamās kļūdas, kas rodas, izmantojot shutil.copyfile() metodi. Ja avots un galamērķis pārstāv vienu un to pašu failu, tiks parādīts izņēmums 'SameFileError' Ja galamērķis ir direktorijs, tad tiks paaugstināts izņēmums 'IsADirectoryError' Ja galamērķis nav rakstāms 'PermissionError' izņēmums tiks paaugstināts Python3 # Python programma, lai izskaidrotu shutil Metode Kopēt # avota saturu uz galamērķi shutil.copyfile(avots, galamērķis) Izvade: Traceback (pēdējais zvans): fails 'copy.py', 31. rindiņa, mapē shutil.copyfile(avots, galamērķis) Fails ' /usr/lib/python3.6/shutil.py', 104. rindiņa, failā copyfile raise SameFileError('{!r} un {!r} ir viens un tas pats fails'.format(src, dst)) shutil. SameFileError: '/home/User/Documents/file.txt' un '/home/User/Documents/file.txt' ir viens un tas pats fails Galamērķa ceļš: /home/User/Documents/file(copy). txt kļūdu apstrāde Šeit mēs apstrādājam kļūdas, izmantojot shutil.copyfile() metodi. Python3 # Python programma, lai izskaidrotu shutil.copyfile() metodi # shutil moduļa importēšana shutil # Avota ceļš avots = '/home/User/Documents/file.txt' # Galamērķa ceļa galamērķis = '/home/User/Documents ' # Kopēt # avota saturu uz galamērķi mēģiniet: shutil.copyfile(avots, galamērķis) print('Fails veiksmīgi kopēts.') # Ja avots un galamērķis ir vienādi, izņemot shutil.SameFileError: print('Avots un galamērķis apzīmē to pašu failu.') # Ja galamērķis ir direktorijs. izņemot IsADirectoryError: print('Galamērķis ir direktorijs.') # Ja ir kāda atļauja problēma, izņemot PermissionError: print('Atļauja liegta.') # Citām kļūdām, izņemot: print('Radās kļūda kopējot failu .') Izvade: galamērķis ir direktorijs. Mēs esam apskatījuši failu kopēšanas metodi Python, izmantojot funkciju shutil.copyfile(). Tā ir ļoti viegli lietojama metode, ko varat izmantot faila kopēšanai. Tas ir ļoti noderīgi, ja vēlaties izveidot faila dublikātu. Lasiet arī: Kā kopēt failu Python3? shutil.copy() metode Viena faila satura kopēšana citā failā Visu failu kopēšana no viena direktorija uz citu, izmantojot Python Kā izveidot esoša faila dublikātu, izmantojot Python?>>