Filen brukes til å lagre data permanent. Noen ganger trenger vi å flytte filplasseringen fra en bane til en annen bane for programmeringsformålet. Denne oppgaven kan gjøres ved å bruke Python-skript på flere måter. Bevege seg () er den mest brukte metoden for Python for å flytte filen fra en katalog til en annen katalog definert i shutil modul. En annen måte å flytte filplassering ved å bruke endre navn på () metoden som er definert i os modul. Disse to metodene kan brukes til å flytte filen fra en katalog til en annen katalog, som forklart i denne opplæringen.
Eksempel 1: Flytt filen med det opprinnelige navnet
Måten å flytte en fil fra et sted til et annet sted med det opprinnelige navnet, er vist i følgende skript. De shutil modulen importeres i skriptet for å bruke bevege seg() funksjon for å flytte filen. Sti modulen importeres for å bruke eksisterer () funksjon for å sjekke det gitte filnavnet eksisterer eller ikke. Hvis filen eksisterer, vil destinasjonsstien til filen bli definert hvor filen skal flyttes. Destinasjonsplasseringen blir skrevet ut etter at filen er flyttet. Hvis filen ikke eksisterer, blir det skrevet ut en feilmelding.
# Importer shutil-modulimportere shutil
# Importer banemodul fra os
fra os importsti
# Sett filnavnet med bane
source_path = "frukt.tekst"
# Kontroller at filen eksisterer eller ikke
hvis sti.eksisterer (kildevei):
# Angi katalogbanen der filen skal flyttes
destination_path = "Filer"
# Flytt filen til den nye plasseringen
new_location = shutil.flytte (kildevei, destinasjonsvei)
# Skriv ut den nye plasseringen av filen
skriv ut ("% s flyttes til stedet,% s"% (kildevei, ny plassering))
ellers:
# Skriv ut meldingen hvis filen ikke eksisterer
print ("Filen eksisterer ikke.")
Produksjon
Følgende utdata vises når du har kjørt skriptet ovenfor. Her, filen, frukt.tekst, eksisterer, og den har flyttet til mappen Filer.
Eksempel 2: Flytt filen med det nye navnet
Måten å flytte en fil fra et sted til et annet sted ved å gi nytt navn til filen, er vist i følgende skript. shutil og sti moduler er importert for å flytte filen og kontrollere eksistensen av filen. Det nye navnet på filen er definert i destinasjonsstien til filen. Hvis filen er flyttet vellykket, vil filstien med det nye navnet bli skrevet ut, og en feilmelding blir skrevet ut.
# Importer shutil-modulimportere shutil
# Importer banemodul fra os
fra os importsti
# Sett filnavnet med bane
source_path = "avd.tekst"
# Kontroller at filen eksisterer eller ikke
hvis sti.eksisterer (kildevei):
# Sett destinasjonskatalogbanen med nytt navn
destination_path = "Filer / avdeling.tekst"
# Flytt filen til den nye plasseringen
new_location = shutil.flytte (kilde sti, destinasjon sti)
# Skriv ut den nye plasseringen av filen
skriv ut ("0 flyttes til stedet, 1".format (kildevei, ny plassering))
ellers:
# Skriv ut meldingen hvis filen ikke eksisterer
print ("Ugyldig filsti.")
Produksjon
Følgende utdata vises når du har kjørt skriptet ovenfor. Her, filen, gjeld.tekst, eksisterer, og den har fått nytt navn avdeling.tekst og flyttet til mappen Filer.
Eksempel 3: Flytt en mappe med flere filer
Måten å flytte en mappe med flere filer på er vist i følgende skript. Her inneholder source_path-variabelen den opprinnelige mappestien, og destinations_path-variabelen inneholder destinasjonsmappestien. Det andre innholdet i skriptet er det samme som de to foregående eksemplene.
# Importer shutil-modulimportere shutil
# Importer banemodul fra os
fra os importsti
# Angi katalogbanen til filene som skal flyttes
source_path = "Bilder / terninger"
# Kontroller at katalogbanen eksisterer eller ikke
hvis sti.eksisterer (kildevei):
# Still inn destinasjonskatalogbanen
destination_path = "Filer / terninger"
# Flytt katalogen med filer til den nye plasseringen
new_location = shutil.flytte (kildevei, destinasjonsvei)
# Skriv ut det nye stedet
utskrift ("0 flyttes til stedet, 1".format (kildevei, ny plassering))
ellers:
# Skriv ut meldingen hvis katalogbanen ikke eksisterer
print ("Ugyldig katalogplassering.")
Produksjon
Følgende utdata vises når du har kjørt skriptet ovenfor. I følge skriptet har mappen terningene flyttet til stedet, filer / terninger.
Eksempel 4: Flytt alle filer og mapper i en bestemt katalog
Måten å flytte enkeltmappen med flere filer på, er vist i forrige eksempel. Men en mappe eller katalog kan også inneholde flere mapper med flere filer. Dette eksemplet viser måten å flytte denne typen mapper til et annet sted. OS-modulen er importert i dette skriptet for å bruke rename () -funksjonen som vil flytte innholdet i mappen med de nestede mappene og flere filer. listdir () -funksjonen brukes til å lage en liste med filene og mappene til kildemappen. Deretter har en for loop brukt til å iterere listen og flyttet innholdet i kildemappen til målmappen ved å bruke rename () -funksjonen.
# Importer os-modulimporter os
# Angi katalogbanen til filene som skal flyttes
source_path = "dokumenter /"
# Kontroller at katalogbanen eksisterer eller ikke
hvis os.sti.eksisterer (kildevei):
# Still inn destinasjonskatalogbanen
destination_path = "Filer /"
# Lag en liste over filer og mapper i kildebanen
fileliste = os.listdir (kildesti)
# Iterer listen over filer og mapper
for fil i fillisten:
os.endre navn (kilde-sti + fil, destinasjon-sti + fil)
# Skriv ut det nye stedet
utskrift ("Alle filer og mapper til 0 flyttes til stedet, 1".format (kildevei, destinasjonsvei))
ellers:
# Skriv ut meldingen hvis katalogbanen ikke eksisterer
print ("Ugyldig katalogbane.")
Produksjon
Følgende utdata vises når du har kjørt skriptet ovenfor. I følge skriptet har alle filene og mappene i dokumentmappen flyttet til mappen Files.
Konklusjon
Ulike måter å flytte plasseringen av enkelt- eller flere filer har vist i denne opplæringen. Bruken av shutil og os-moduler for å flytte plasseringen av filer og mapper er forklart i denne opplæringen ved hjelp av et enkelt eksempel for å enkelt hjelpe pythonbrukerne med å gjøre denne typen oppgaver.