Python:在所有子目录中运行脚本

瓦列里奥

我是Python的新手,正在使用它进行一些数据分析。

我的问题如下:我有一个包含许多子目录的目录,每个子目录都包含大量的数据文件。

我已经编写了一个Python脚本,当在这些子目录之一中执行该脚本时,它将执行数据分析并将其写入输出文件中。该脚本包含一些我使用调用的shell命令os.system(),因此我必须在其中一个子目录中“成为”它才能工作。

如何编写自动执行的功能:

  1. 移到第一个子目录
  2. 执行脚本
  3. 返回到父目录并移至下一个子目录

我想可以使用某种方式完成此操作,os.walk()但我并不十分了解它是如何工作的。

PS我知道这篇文章的存在,但不能解决我的问题。

PPS也许我应该指出,我的函数没有采用目录名称作为参数。实际上,不需要任何争论。

ant0nisk

要在Python中更改工作目录,您需要:

os.chdir(your_path)

然后,您可以递归运行脚本。

示例代码:

import os

directory_to_check = "your_dir" # Which directory do you want to start with?

def my_function(directory):
      print("Listing: " + directory)
      print("\t-" + "\n\t-".join(os.listdir("."))) # List current working directory

# Get all the subdirectories of directory_to_check recursively and store them in a list:
directories = [os.path.abspath(x[0]) for x in os.walk(directory_to_check)]
directories.remove(os.path.abspath(directory_to_check)) # If you don't want your main directory included

for i in directories:
      os.chdir(i)         # Change working Directory
      my_function(i)      # Run your function

我不知道您的脚本是如何工作的,因为您的问题很笼统,所以我只能给出一个笼统的答案...。

但我认为您需要的是:

  1. 获取所有子目录并使用os.walk进行存储
  2. 使用os.chdir更改工作目录

单独的os.walk无法正常工作

我希望这有帮助!祝你好运!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在所有子目录中的特定文件上运行脚本

来自分类Dev

在所有子目录中运行多个python文件

来自分类Dev

Bash脚本为所有子目录中的所有图像运行python脚本

来自分类Dev

Powershell脚本在所有子目录中调用git init

来自分类Dev

WiX Registry在所有子目录中搜索

来自分类Dev

chmod文件仅在所有子目录中

来自分类Dev

bash,在所有子目录中“ make clean”

来自分类Dev

自动制作:遍历子目录之前运行脚本

来自分类Dev

鼻子测试 - 在子目录中运行所有测试

来自分类Dev

bash脚本,该脚本在子目录中找到特定的文件夹并在所有目录中递归创建目录

来自分类Dev

在所有目录中查找具有相同名称的子目录

来自分类Dev

Vim:在所有子目录中打开所有.c和.h

来自分类Dev

如何在所有子目录中创建目录?

来自分类Dev

在所有子目录中搜索某些文件,跳过某些文件夹

来自分类Dev

如何在所有子目录中查找文件并将其复制?

来自分类Dev

如何使用Shell脚本访问所有子目录中的所有文件?

来自分类Dev

对所有子目录中的所有文件运行检查

来自分类Dev

glob.iglob在所有子目录中查找所有.txt文件会产生错误

来自分类Dev

如何删除所有子目录?(unix shell脚本)

来自分类Dev

Shell脚本打印所有子目录的路径

来自分类Dev

在所有工作表上运行脚本Excel

来自分类Dev

如何从子目录运行Python脚本?

来自分类Dev

使用 shell 脚本在子目录中运行 make 文件

来自分类Dev

Python脚本根据文件名提取所有子目录

来自分类Dev

遍历Unix shell脚本中的所有子目录并执行某些操作

来自分类Dev

运行bash脚本以将.csv附加到子目录中的文件中,该子目录从计算机中移动/删除了所有文件

来自分类Dev

解压目录和子目录中的所有.gz

来自分类Dev

如何计算目录中存在的所有子目录?

来自分类Dev

如何从目录中删除所有子目录?

Related 相关文章

  1. 1

    在所有子目录中的特定文件上运行脚本

  2. 2

    在所有子目录中运行多个python文件

  3. 3

    Bash脚本为所有子目录中的所有图像运行python脚本

  4. 4

    Powershell脚本在所有子目录中调用git init

  5. 5

    WiX Registry在所有子目录中搜索

  6. 6

    chmod文件仅在所有子目录中

  7. 7

    bash,在所有子目录中“ make clean”

  8. 8

    自动制作:遍历子目录之前运行脚本

  9. 9

    鼻子测试 - 在子目录中运行所有测试

  10. 10

    bash脚本,该脚本在子目录中找到特定的文件夹并在所有目录中递归创建目录

  11. 11

    在所有目录中查找具有相同名称的子目录

  12. 12

    Vim:在所有子目录中打开所有.c和.h

  13. 13

    如何在所有子目录中创建目录?

  14. 14

    在所有子目录中搜索某些文件,跳过某些文件夹

  15. 15

    如何在所有子目录中查找文件并将其复制?

  16. 16

    如何使用Shell脚本访问所有子目录中的所有文件?

  17. 17

    对所有子目录中的所有文件运行检查

  18. 18

    glob.iglob在所有子目录中查找所有.txt文件会产生错误

  19. 19

    如何删除所有子目录?(unix shell脚本)

  20. 20

    Shell脚本打印所有子目录的路径

  21. 21

    在所有工作表上运行脚本Excel

  22. 22

    如何从子目录运行Python脚本?

  23. 23

    使用 shell 脚本在子目录中运行 make 文件

  24. 24

    Python脚本根据文件名提取所有子目录

  25. 25

    遍历Unix shell脚本中的所有子目录并执行某些操作

  26. 26

    运行bash脚本以将.csv附加到子目录中的文件中,该子目录从计算机中移动/删除了所有文件

  27. 27

    解压目录和子目录中的所有.gz

  28. 28

    如何计算目录中存在的所有子目录?

  29. 29

    如何从目录中删除所有子目录?

热门标签

归档