Pyhton以尽可能少的行迭代分配/创建多个目录

2024-05-29 11:13:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个脚本,它使用它的主目录中的一些目录。第一步是使用os.path.join()为这些目录分配变量名。但是,如果目录不存在,我需要创建它。我事先不知道哪些目录存在,哪些目录不存在。我提出的解决方案是:

homepath = os.path.abspath(os.path.dirname(sys.argv[0]))
def make_dir(var_name,dir_name):
    var_name = os.path.join(homepath,dir_name)
    if os.path.exists(var_name) == False:
        os.mkdir(var_name)
    return var_name

pathnames = ['bands','clipfiles','ndvi','ndmi','masked','clipped','upsampled','stats_csv']      

path_to_bands = make_dir(path_to_bands, pathnames[0])
path_to_clipfiles = make_dir(path_to_clipfiles, pathnames[1])
path_to_ndvi = make_dir(path_to_ndvi, pathnames[2])

path_to_波段、path_to_剪辑文件等是我稍后将在脚本中使用的文件夹。但是,我现在需要为分配给变量的每个目录编写一行代码。有没有办法把path\u-to\u带、path\u-to\u clipfiles等列成一个列表,并在上面循环几行?实际上,我有很多目录,我不想让它不必要地填满我的脚本

谢谢


Tags: topathname目录脚本makeosvar

热门问题