python - 如何将文件文件夹移动到可变命名的文件夹

标签 python operating-system shutil

我正在尝试将文件移动到一个创建并命名可变的文件夹中。

import os
import pandas as pd
import shutil
import glob

os.chdir('C:\\profili\\u421562\\Documents\\5- PYTHON DATA\\FOLDER_CREATION_ZONE')

name_of_file = 'Random_NAME'

if os.path.isdir(name_of_KYC) == False
   os.mkdir(name_of_KYC)    
else:
   print("FILE Already EXISTS")

os.mkdir(name_of_KYC+'/Entity Documents')
os.mkdir(name_of_KYC+'/Archive')
os.mkdir(name_of_KYC+'/FinCen adnd IDs')
os.mkdir(name_of_KYC+'/KYC FORMs')

source = 'C:/profili//u421562/Documents//5- PYTHON DATA//KYC_Forms'
dest1 = 'c:/profili/u421562/Documents/5- PYTHON DATA/FOLDER_CREATION_ZONE' + '/' + name_of_file + '/' + 'KYC_FORMs/'

files = os.listdir(source)

for f in files:
    shutil.move(source+f, dest1)

文件未找到错误:

[Errno 2]没有这样的文件或目录:

'C:/profili//u421562/Documents//5- PYTHON DATA//KYC_FormsKYC Checklist_.docx'

最佳答案

正如@packetloss提到的,缺少路径分隔符的问题。

要以独立于平台的方式避免此错误,请使用 pathlib 模块。具体来说,

  1. source = 'C:/profili//u421562/Documents//5- PYTHON DATA//KYC_Forms' 更改为 source = pathlib.Path('C:/profili//u421562/Documents//5- PYTHON DATA//KYC_Forms')
  2. shutil.move(source+f, dest1) 更改为 shutil.move(source/f, dest1)

关于python - 如何将文件文件夹移动到可变命名的文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59780438/

相关文章:

python - Phabricator Arcanist 的 noose2 单元测试

python - 如何提高 python 中这个 readline 循环的速度?

c++ - 我怎样才能完全理解操作系统的工作原理?

memory-management - 为什么具有 12 位偏移量的 16 位地址会导致 4KB 的页面大小?

python - Shutil.copy 不会复制

python - 无法使用 shutil 从远程计算机复制文件

python - sympy 符号矩阵平方根

python - 我无法使用 pip 安装任何软件包

operating-system - 无效的页表条目是什么意思?

Python:使用 shutil.move 或 os.rename 移动文件夹