Paano Ilipat ang File sa Isa pang Direktoryo sa Python

How Move File Into Another Directory Python



Ginagamit ang file upang permanenteng mag-imbak ng data. Minsan hinihiling namin na ilipat ang lokasyon ng file mula sa isang landas patungo sa isa pang landas para sa layunin ng programa. Ang gawaing ito ay maaaring magawa sa pamamagitan ng paggamit ng Python script sa maraming paraan. Ilipat () ay ang pinaka ginagamit na pamamaraan ng Python upang ilipat ang file mula sa isang direktoryo sa isa pang direktoryo na tinukoy sa shutil modyul Isa pang paraan ng paglipat ng lokasyon ng file sa pamamagitan ng paggamit palitan ang pangalan () pamamaraan na tinukoy sa ikaw modyul Ang dalawang pamamaraang ito ay maaaring magamit upang ilipat ang file mula sa isang direktoryo patungo sa isa pang direktoryo, tulad ng ipinaliwanag sa tutorial na ito.

Halimbawa-1: Ilipat ang file gamit ang orihinal na pangalan

Ang paraan upang ilipat ang isang file mula sa isang lokasyon sa isa pang lokasyon na may orihinal na pangalan ay ipinakita sa sumusunod na script. Ang shutil ang module ay na-import sa script upang magamit ang ilipat () pagpapaandar para sa paglipat ng file. Landas ang module ay na-import upang magamit ang umiiral () function para sa pag-check sa ibinigay na filename mayroon o hindi. Kung mayroon ang file, ang patutunguhang landas ng file ay matutukoy kung saan ililipat ang file. Ang lokasyon ng patutunguhan ay mai-print pagkatapos ilipat ang file. Kung ang file ay wala, pagkatapos ang isang mensahe ng error ay mai-print.







# I-import ang module ng shutil

angkat shutil

# Mag-import ng module ng path mula sa os

mula sa ikaw angkatlandas


# Itakda ang filename na may path

source_path= 'fruit.txt'


# Suriin ang file na mayroon o wala

kunglandasumiiral(source_path):

# Itakda ang path ng direktoryo kung saan ililipat ang file

patutunguhan_path= 'Mga file'

# Ilipat ang file sa bagong lokasyon

bagong lokasyon= shutil.gumalaw(source_path,patutunguhan_path)

# I-print ang bagong lokasyon ng file

mag-print('Ang% s ay inilipat sa lokasyon,% s'%(source_path,bagong lokasyon))

iba pa:

# I-print ang mensahe kung wala ang file

mag-print('Walang file.')

Paglabas

Ang sumusunod na output ay lilitaw pagkatapos patakbuhin ang script sa itaas. Narito, ang file, prutas.txt , mayroon, at lumipat ito sa folder Mga file .





Halimbawa-2: Ilipat ang file gamit ang bagong pangalan

Ang paraan upang ilipat ang isang file mula sa isang lokasyon patungo sa isa pang lokasyon sa pamamagitan ng pagpapalit ng pangalan ng file ay ipinakita sa sumusunod na script. shutil at landas na-import ang mga module para sa paglipat ng file at suriin ang pagkakaroon ng file. Ang bagong pangalan ng file ay tinukoy sa patutunguhang landas ng file. Kung ang file ay matagumpay na inilipat, pagkatapos ang file path na may bagong pangalan ay mai-print iba pang isang mensahe ng error ay mai-print.





# I-import ang module ng shutil

angkat shutil

# Mag-import ng module ng path mula sa os

mula sa ikaw angkatlandas


# Itakda ang filename na may path

source_path= 'dept.txt'


# Suriin ang file na mayroon o wala

kunglandasumiiral(source_path):

# Itakda ang path ng direktoryo ng patutunguhan na may bagong pangalan

patutunguhan_path= 'Mga file / department.txt'

# Ilipat ang file sa bagong lokasyon

bagong lokasyon= shutil.gumalaw(source_path,patutunguhan_path)

# I-print ang bagong lokasyon ng file

mag-print('Ang {0} ay inilipat sa lokasyon, {1}'.format(source_path,bagong lokasyon))

iba pa:

# I-print ang mensahe kung wala ang file

mag-print('Di-wastong landas ng file.')

Paglabas

Ang sumusunod na output ay lilitaw pagkatapos patakbuhin ang script sa itaas. Narito, ang file, dept.txt , mayroon, at pinalitan ito ng pangalan kagawaran.txt at lumipat sa folder Mga file .



Halimbawa-3: Ilipat ang isang folder na may maraming mga file

Ang paraan upang ilipat ang isang folder na may maraming mga file ay ipinakita sa sumusunod na script. Dito, naglalaman ang variable ng source_path ng orihinal na path ng folder, at ang variable na patutunguhan_path ay naglalaman ng patutunguhang folder ng folder. Ang iba pang nilalaman ng script ay pareho sa nakaraang dalawang halimbawa.

# I-import ang module ng shutil

angkat shutil

# Mag-import ng module ng path mula sa os

mula sa ikaw angkatlandas


# Itakda ang path ng direktoryo ng mga file upang ilipat

source_path= 'Mga imahe / dice'


# Suriin ang path ng direktoryo na mayroon o hindi

kunglandasumiiral(source_path):

# Itakda ang path ng direktoryo ng patutunguhan

patutunguhan_path= 'Mga file / dice'

# Ilipat ang direktoryo gamit ang mga file sa bagong lokasyon

bagong lokasyon= shutil.gumalaw(source_path,patutunguhan_path)

# I-print ang bagong lokasyon

mag-print('Ang {0} ay inilipat sa lokasyon, {1}'.format(source_path,bagong lokasyon))

iba pa:

# I-print ang mensahe kung wala ang path ng direktoryo

mag-print('Di-wastong lokasyon ng direktoryo.')

Paglabas

Ang sumusunod na output ay lilitaw pagkatapos patakbuhin ang script sa itaas. Ayon sa script, ang folder dice ay lumipat sa lokasyon, Files / dice.

Halimbawa-4: Ilipat ang lahat ng mga file at folder ng isang partikular na direktoryo

Ang paraan upang ilipat ang solong folder na may maraming mga file ay ipinakita sa nakaraang halimbawa. Ngunit ang isang folder o direktoryo ay maaaring maglaman ng maraming mga folder na may maraming mga file din. Ipinapakita ng halimbawang ito ang paraan upang ilipat ang ganitong uri ng folder sa ibang lokasyon. Ang os module ay na-import sa script na ito upang magamit ang pangalan ng () pagpapaandar na ilipat ang nilalaman ng folder na may mga nakapugad na folder at maraming mga file. Ginagamit ang pagpapaandar ng listdir () upang lumikha ng isang listahan kasama ang mga file at folder ng pinagmulang folder. Susunod, ginamit ng isang para sa loop ang pag-ulit ng listahan at inilipat ang nilalaman ng folder ng pinagmulan sa patutunguhang folder sa pamamagitan ng paggamit ng pangalan na () pagpapaandar.

# I-import ang module ng os

angkat ikaw


# Itakda ang path ng direktoryo ng mga file upang ilipat

source_path= 'mga dokumento /'


# Suriin ang path ng direktoryo na mayroon o hindi

kung ikaw.landas.umiiral(source_path):

# Itakda ang path ng direktoryo ng patutunguhan

patutunguhan_path= 'Mga file/'

# Lumikha ng isang listahan ng mga file at folder ng pinagmulang landas

filelist= ikaw.listdir(source_path)



# Iterate ang listahan ng mga file at folder

para sa file safilelist:

ikaw.palitan ang pangalan(source_path +file,patutunguhan_path +file)

# I-print ang bagong lokasyon

mag-print('Lahat ng mga file at folder ng {0} ay inilipat sa lokasyon, {1}'.format(source_path,patutunguhan_path))

iba pa:

# I-print ang mensahe kung wala ang path ng direktoryo

mag-print('Di-wastong landas ng direktoryo.')

Paglabas

Ang sumusunod na output ay lilitaw pagkatapos patakbuhin ang script sa itaas. Ayon sa script, lahat ng mga file at folder ng folder ng mga dokumento ay lumipat sa folder ng Files.

Konklusyon

Iba't ibang mga paraan upang ilipat ang lokasyon ng solong o maraming mga file ay ipinakita sa tutorial na ito. Ang mga paggamit ng mga module ng shutil at os para sa paglipat ng lokasyon ng mga file at folder ay ipinaliwanag sa tutorial na ito na gumagamit ng isang simpleng halimbawa upang madaling matulungan ang mga gumagamit ng sawa na gawin ang ganitong uri ng gawain.