python 我试图创建一个新文件夹,但遇到了问题

6mzjoqzu  于 2022-12-17  发布在  Python
关注(0)|答案(2)|浏览(195)

当我尝试使用os.chdir时,它也会以某种方式更改其他内容中的路径这里有更多的上下文:
文件夹创建者

def create_world():
    global path
    path = 'saved_data'
    os.chdir(path)
    os.makedirs('world2')

文件阅读器

def read_txt_file(destination, line1):
    file = open('text/' + str(destination) + '.txt', 'r')
    f = file.readlines()
    txt = []
    for line in f:
        txt.append(line.strip())
    return txt[line1 - 1]

当我尝试创建一个新文件夹时,os.chdir改变了其他文件的路径,但是python只是说那个文件不存在
我发现,当我做一个新的文件夹,它保存的目录如下:之前:C:\用户\prcha\PycharmProjects--冒险--之后:C:\用户\程序代码\PycharmProjects--冒险--\保存的数据

z4iuyo4d

z4iuyo4d1#

在创建目录之前,尝试使用path = os.path.join('saved_data', 'world2')创建path
此外,如果“saved_data”是您使用的完整路径,它可能无法工作,除非该路径恰好与脚本位于同一文件夹中。您需要根据您的操作系统执行类似r'C:\saved_data'~/saved_data的操作。
就我个人而言,我使用pathlib库来处理这样的事情。

directoryBase = "{}/{}/Bucket {}/RB".format(part1, time.strftime("%m-%d-%Y"), part2)
pathlib.Path(directoryBase).mkdir(parents=True, exist_ok=True)

这将检查directoryBase是否已经存在,如果不存在,则创建目标文件夹和任何也不存在的Parent文件夹。

pod7payv

pod7payv2#

所以我发现我可以使用一小行代码来立即将路径修复为其他路径,如下所示:

FULLPATHold = os.getcwd()

对于字符1中的字符,FULLPATH = ''字符1 = '\ ':character 1 = FULLPATHold中字符的字符中断:如果字符串==字符串(字符1):完整路径=完整路径+ '/',否则:完整路径=完整路径+字符完整路径=完整路径+ '/'

相关问题