以下是将移动和替换单个文件的代码
import shutil
import os
src = 'scrFolder'
dst = './dstFolder/'
filelist = []
files = os.listdir( src )
for filename in files:
filelist.append(filename)
fullpath = src + '/' + filename
shutil.move(fullpath, dst)
Run Code Online (Sandbox Code Playgroud)
如果我执行相同的命令并移动已经存在的文件dst folder我正在获取shutil.Error: Destination path './dstFolder/file.txt' already exists如何移动并替换相同的文件名已经存在
我已尝试使用以下代码在YouTube上下载视频并且它正常运行,但我想将视频保存在特定位置.现在它正在保存视频C:/Users/Download.如果我想在桌面上保存视频,我需要在代码中进行哪些更改?
from __future__ import unicode_literals
import youtube_dl
import urllib
import shutil
ydl_opts = {}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download(['https://www.youtube.com/watch?v=n06H7OcPd-g'])
Run Code Online (Sandbox Code Playgroud) 我在/ home/somedir/subdir /中有很多文件,我试图以编程方式将它们全部移动到/ home/somedir.
现在我有这个:
subprocess.call(["mv", "/home/somedir/subdir/*", "somedir/"])
Run Code Online (Sandbox Code Playgroud)
但它给了我这个错误:
mv: cannot stat `/home/somedir/subdir/*': No such file or directory
Run Code Online (Sandbox Code Playgroud)
我知道它确实存在,因为当我使用与脚本使用的完全相同的命令手动键入mv命令时,它可以完美地工作.
我有python脚本,将文件夹中的现有文件名与参考表进行比较,然后确定是否需要重命名.
因为它遍历每个文件名:
'oldname' = the current file name
'newname' = what it needs to be renamed to
Run Code Online (Sandbox Code Playgroud)
我想重命名该文件并将其移动到一个新文件夹"..\renamedfiles"
我可以在迭代循环的同时进行重命名和移动吗?
更新:道歉,我对scrpting一般都很绿,但这看起来非常基本.shutil.move正是我需要的感谢 - 我只是不知道要找它.下面的成功测试.现在将其用于脚本.
import shutil
os.chdir('C:\Users\me\Desktop\New folder')
renFolder= 'Renamed'
oldname = 'Test.txt'
newname= 'renTest.txt'
shutil.move(oldname, renFolder+'/'+newname)
Run Code Online (Sandbox Code Playgroud) 我有一个名为 ImageData 的图像文件夹,其中有 5000 个子文件夹,每个子文件夹包含 2-3 个图像。我想检索这些图像并将它们存储在一个地方/文件夹中。我如何使用 python 来做到这一点。
我需要将大量数据移动到一个驱动器上的不同位置,因此剪切和粘贴会更快.目前,我只是使用shutil.copytree和shutil.rmtree,它可以工作,但速度很慢.
有没有办法剪切/粘贴文件而不是复制/删除?
我正在尝试为我的工作完成一个脚本,以清理他们的文件组织系统。我的脚本的最后一部分需要进入给定目录中的所有文件夹,并将每个文件夹中的所有文件移动到该目录。例如:
import os
path = 'C:/User/Tom/Documents'
folders = os.listdir(path)
print(folders)
Run Code Online (Sandbox Code Playgroud)
可以说文件夹结构是这样的:
Documents
[________ Folder A
..................[_________ File 1
..................[_________ File 2
[________ Folder B
..................[_________ File 3
..................[_________ File 4
[________ Folder C
..................[_________ File 5
..................[_________ File 6
..................[_________ File 7
Run Code Online (Sandbox Code Playgroud)
我的目标是以某种方式进入“文档”下的每个文件夹,通过将所有文件向上移动一层来清空文件夹,而不必在如下所示的“文档”路径中输入文件夹名称或文件名:
Documents
[________ Folder A
[_________ File 1
[_________ File 2
[________ Folder B
[_________ File 3
[_________ File 4
[________ Folder C
[_________ File 5
[_________ File 6
[_________ File 7
Run Code Online (Sandbox Code Playgroud)
我是python的新手,关于如何高效地执行此操作的唯一想法是在每个文件夹目录中键入很多代码,然后对它们进行shutdownil.move()。但是,这对于我的应用程序将不起作用,因为脚本需要能够针对X数量的文件夹和Y数量的文件来完成此任务,而不必输入每个文件夹路径。
我想以有效的方式寻求任何建议,使我可以循环浏览“文件夹”列表,并将文件从文件夹中移出到路径目录中。
抱歉,很长的帖子,我只是想尽可能详细地回答我的问题,谢谢!
我正在尝试制作一个安装脚本,能够为我设置一个工作区,这样我就不需要手动完成了.我开始在bash中这样做,但很快就意识到这样做不会那么好.
我的下一个想法是使用python来做,但似乎无法以正确的方式做到这一点.我的想法是创建一个列表(列表是一个带有所有数据文件路径的.txt文件),随机播放此列表,然后将每个文件移动到我的火车目录或测试目录,给定比率....
但这是python,并没有更简单的方法来实现它,似乎我正在做一个ullsary解决方法只是为了分割文件.
Bash代码:
# Partition data randomly into train and test.
cd ${PATH_TO_DATASET}
SPLIT=0.5 #train/test split
NUMBER_OF_FILES=$(ls ${PATH_TO_DATASET} | wc -l) ## number of directories in the dataset
even=1
echo ${NUMBER_OF_FILES}
if [ `echo "${NUMBER_OF_FILES} % 2" | bc` -eq 0 ]
then
even=1
echo "Even is true"
else
even=0
echo "Even is false"
fi
echo -e "${BLUE}Seperating files in to train and test set!${NC}"
for ((i=1; i<=${NUMBER_OF_FILES}; i++))
do
ran=$(python -c "import random;print(random.uniform(0.0, 1.0))")
if [[ ${ran} < …Run Code Online (Sandbox Code Playgroud) 我正在寻找的是一个脚本,它可以浏览大量图片并将它们分类到文件夹中。
所以我在展会上拍了狗的照片,所以假设我拍了几张 dog1 的照片,这张狗的照片会自动以序列号格式命名(Dog1-1、Dog1-2、Dog1-3 等)。Dog2 将遵循相同的格式。
我想要一个可以将 Dog1-1-10 移动到名为 Dog 1 的文件夹中的脚本。Dog2-1-10 移动到名为 Dog 2 的文件夹中,等等。
这如何在 Python 中完成?
python ×8
file ×2
python-2.7 ×2
shutil ×2
automation ×1
bash ×1
file-rename ×1
mv ×1
python-3.x ×1
sorting ×1
stat ×1
subprocess ×1
text-files ×1
unix ×1