簡體   English   中英

如何動態獲取Databricks Notebook的路徑?

[英]How to get the path of the Databricks Notebook dynamically?

請不要為 IPython/Jupyter 筆記本提供解決方案。 技術不一樣。

我想動態獲取我的 Databricks 筆記本的路徑。 這是我可以從 UI“復制文件路徑”中獲得的內容,如下所示。 我無法使用__file__因為這給了我錯誤。

NameError: name '__file__' is not defined

在此處輸入圖片說明

如果有類似的東西可供您使用,可以通過檢查globals()locals() ,例如

print(globals())

就我而言,我發現的最接近的是:

_dh

例如:

print(_dh)
# ['/media/win10/Users/norok2/Downloads']

每個筆記本都有所謂的“上下文”,其中包含許多關於環境的信息,包括 HTTP 路徑、主機名等。它可以作為 Python dict 使用這樣的東西進行檢索(轉換為 JSON 並返回比獲取更簡單) .get函數的字段):

import json
ctx = json.loads(dbutils.notebook.entry_point.getDbutils().notebook().getContext().toJson())

ctx字典中有一個名為extraContext ,其中包含您需要的字段notebook_path

nb_path = ctx['extraContext']['notebook_path']

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM