專案很多地方都用了路徑變數或引數,部署在不同裝置上專案各檔案的相對路徑雖沒有變,但絕對路徑卻始終在變化,簡單粗暴的方式可以find專案名字獲取專案路徑拼接獲取專案根目錄和其他檔案目錄,但希望可以有更文明的方式去獲取專案的根目錄,進而拼接相對路徑,獲取到絕對路徑。
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# project_name: autorunner
# author : holidaylzz
# time : 2019/11/13
import sys
import os
class pathutils(object):
"""path utils
"""def __init__(self):
# 判斷除錯模式
# python獲得一些有關系統的各種資訊的時候就不得不想到os的environ()
debug_vars = dict((a, b) for a, b in os.environ.items() if a.find('ipythonenable') >= 0)
# 根據不同場景獲取根目錄
if len(debug_vars) > 0:
# 當前為debug執行時
self.rootpath = sys.path[2]
elif getattr(sys, 'frozen', false):
# 當前為exe執行時
self.rootpath = os.getcwd()
else:
# 正常執行
self.rootpath = sys.path[1]
# 替換斜槓
# self.rootpath = self.rootpath.replace("\\", "\")
def make_project_dir(self, directory):
"""在專案中建立檔案目錄,已建立則忽略
:param directory:專案檔案目錄
:return:
"""os.makedirs('%s/%s' % (self.rootpath, directory), exist_ok=true)
def get_project_abspath(self, *path):
"""獲取專案檔案目錄
:param path:
:return:
"""return os.path.join(self.rootpath, *path)
# 單例模式呼叫路徑工具類
pathutil = pathutils()
python 獲取專案根目錄
感謝大佬的blog 獲取專案根目錄方法之一,一會有別的方法再更新 windows import os curpath os.path.abspath os.path.dirname file rootpath curpath curpath.find myproject len myproject ...
C 獲取專案根目錄
c 獲取專案根目錄,以下圖專案為例,要定位到目錄tmp中,下面為參考 獲取根目錄測試 directoryinfo rootdir directory.getparent environment.currentdirectory string root rootdir.parent parent fu...
Freemarcker獲取專案根目錄
現在知道了freemarker模板技術,發現在用freemarker之後引入到檔案中的css和js檔案都沒有起作用,在jsp頁面中還可以用 來設定絕對路徑,請問怎麼樣在ftl檔案中設定標籤的值?還有,生成靜態頁面之後怎麼樣顯示使用者登陸了的資訊?全部採用絕對定位即可,比如我的使用,在乙個全域性mac...