Python 循环移动文件
Python Loop to move files
再一次,我正在寻找一些帮助,在此先感谢。此代码的目的是将列表中的文件从一个文件夹移动到另一个文件夹。
它给我下面的错误。
import shutil
Import os
source='/dev/sdc /mnt/mnttensor/Dhole/'
destination='/home/ubuntu/classificator/nodhole/'
fo = open("dhole3.txt", "r")
content = fo.readlines()
for files in content:
shutil.move(source+files,destination+files)
错误
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
File "/usr/lib/python2.7/shutil.py", line 302, in move
copy2(src, real_dst)
File "/usr/lib/python2.7/shutil.py", line 130, in copy2
copyfile(src, dst)
File "/usr/lib/python2.7/shutil.py", line 82, in copyfile
with open(src, 'rb') as fsrc:
IOError: [Errno 2] No such file or directory: '/dev/sdc /mnt/mnttensor/Dhole/227_5267_M0423_19Oct12-IMAG0068.JPG\r\n'
如果能提供任何帮助,我将不胜感激。
查看错误目录:
/dev/sdc /mnt/mnttensor/Dhole/227_5267_M0423_19Oct12-IMAG0068.JPG\r\n
注意文件末尾的 \r\n
。这很可能是导致错误的原因,应该通过在 for 循环内使用 rstrip()
方法来修复此问题,以便在 shutil.move()
方法尝试查找文件时截断特殊字符。所以 for 循环应该看起来像这样:
for files in content:
shutil.move(source + files.rstrip("\r\n"), destination + files.rstrip("\r\n"))
还要注意 /dev/sdc
目录中的空白字符——这可能是无意的,应该被删除。
再一次,我正在寻找一些帮助,在此先感谢。此代码的目的是将列表中的文件从一个文件夹移动到另一个文件夹。 它给我下面的错误。
import shutil
Import os
source='/dev/sdc /mnt/mnttensor/Dhole/'
destination='/home/ubuntu/classificator/nodhole/'
fo = open("dhole3.txt", "r")
content = fo.readlines()
for files in content:
shutil.move(source+files,destination+files)
错误
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
File "/usr/lib/python2.7/shutil.py", line 302, in move
copy2(src, real_dst)
File "/usr/lib/python2.7/shutil.py", line 130, in copy2
copyfile(src, dst)
File "/usr/lib/python2.7/shutil.py", line 82, in copyfile
with open(src, 'rb') as fsrc:
IOError: [Errno 2] No such file or directory: '/dev/sdc /mnt/mnttensor/Dhole/227_5267_M0423_19Oct12-IMAG0068.JPG\r\n'
如果能提供任何帮助,我将不胜感激。
查看错误目录:
/dev/sdc /mnt/mnttensor/Dhole/227_5267_M0423_19Oct12-IMAG0068.JPG\r\n
注意文件末尾的 \r\n
。这很可能是导致错误的原因,应该通过在 for 循环内使用 rstrip()
方法来修复此问题,以便在 shutil.move()
方法尝试查找文件时截断特殊字符。所以 for 循环应该看起来像这样:
for files in content:
shutil.move(source + files.rstrip("\r\n"), destination + files.rstrip("\r\n"))
还要注意 /dev/sdc
目录中的空白字符——这可能是无意的,应该被删除。