Python相对路径2个文件夹以上

问题描述 投票:0回答:1

我有以下文件夹结构

[ProjectX/DataProjectX/mysite/core

ProjectX/mysite/core内部是我的python脚本,我用来在ProjectX/Data内部创建文件。

此刻即时通讯正在使用:

fileList = glob.glob(f"/var/home/USER/Documents/ProjectX/DATA/{user_name_directory}/*.pdf")

f = open(f'/var/home/USER/Documents/ProjectX/DATA/{user_name_directory}/data_text.txt','w')

如果我使用

f = open(f'~/ProjectX/DATA/{user_name_directory}/data_text.txt','w')

它不会工作。我也想在Windows机器上运行这个django项目。

当脚本位于两个文件夹中时,如何从ProjectX主文件夹写入相对路径?

我如何先建立2个文件夹,然后在DATA中?

编辑:

我尝试过:

import os
def file_path(relative_path):
    dir = os.path.dirname(os.path.abspath(__file__))
    split_path = relative_path.split("/")
    new_path = os.path.join(dir, *split_path)
    return new_path

fileList = glob.glob(file_path(f"/ProjectX/DATA/{user_name_directory}/*.pdf"))

以及下面脚本的第二部分:

f = open(file_path(f"/ProjectX/DATA/{user_name_directory}/data_text.txt",'w'))

它不会起作用。

django python-3.x
1个回答
1
投票
import os 
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
print(BASE_DIR)
myurl = BASE_DIR + "/ProjectX/DATA/{user_name_directory}/data_text.txt"
with open(myurll, "w") as f:       
     blabla
© www.soinside.com 2019 - 2024. All rights reserved.