python - 如何为目录中的每个项目创建一个文件夹?

标签 python python-3.x

我无法将我创建的文件夹放到我想要的位置。对于给定文件夹中的每个文件,我想创建一个新文件夹,然后将该文件放入新文件夹中。我的问题是我创建的新文件夹被放入父目录中,而不是我想要的目录中。我的例子:

def createFolder():
    dir_name = 'C:\\Users\\Adrian\\Entertainment\\Coding\\Test Folder'
    files = os.listdir(dir_name)
    for i in files:
        os.mkdir(i)

假设该目录中的文件是 Hello.txt 和 Goodbye.txt。当我运行脚本时,它会为这些文件创建新文件夹,但将它们放在上面一层,即“C:\Users\Adrian\Entertainment\Coding”中。

如何才能将它们创建在与文件相同的位置,即“C:\Users\Adrian\Entertainment\Coding\Test Folder”?

最佳答案

import os, shutil

for i in files:
  os.mkdir(os.path.join(dir_name , i.split(".")[0]))
  shutil.copy(os.path.join(dir_name , i), os.path.join(dir_name , i.split(".")[0]))

关于python - 如何为目录中的每个项目创建一个文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11424989/

相关文章:

python - 替换原生 python 上不稳定的 Tcl/Tk

Python 记录器忽略类中的 FileHandler 和 StreamHandler 级别

python - 在 Python 中添加到字典时可以连接一个值吗?

python - Python 中的 FileNotFoundError : [Errno 2] No such file or directory using os. 取消链接

python - 调用对象的状态特定代码块的最有效方法是什么?

python - PySide Qt 在叶项中插入行并更新 View

python - 大 N 的 [1,2,3,...,N] 的采样排列

python-3.x - 将字符串与 Base 64 相互转换

python - 索引错误 : cannot fit 'int' into an index-sized integer

python - 类型错误 : cannot unpack non-iterable NoneType object