取消
顯示的結果
而不是尋找
你的意思是:

如何導入一個函數沒有%運行到另一個筆記本使用回購?

maranBH
新的貢獻者三世

你好,

我在讀回購文檔:https://docs.www.eheci.com/repos.html migrate-from-run-commands

解釋說,回購的一個優點是不再需要使用%魔法運行命令提供函數在一個筆記本到另一個地方。也就是說,我們可以將它們導入:

“從notebook_in_repos進口有趣”

我測試了在回購,但´t工作。我:“沒有模塊名為notebook_in_repos”

我想這個特性。場景是構建一個完整的模塊隻是做進口。另一方麵,%魔法命令並不是一個好取代;它覆蓋本地變量和陷入困境的名稱空間。

我怎麼能做這項工作嗎?

謝謝。

1接受解決方案

接受的解決方案

maranBH
新的貢獻者三世

謝謝你們所有人的幫助!我試過所有的建議;但我首先終於意識到這是我的錯:

  1. 我是測試文件在運行時回購< 8.4。
  2. 我試圖導入一個文件從一個DB筆記本而不是靜態. py文件。

升級我的運行時和我所有的代碼遷移到一個. py文件起了作用!

再次謝謝大家!

在原帖子查看解決方案

5回複5

Kaniz
社區經理
社區經理

maranBH!我的名字叫Kaniz,我這裏的技術主持人。很高興認識你,謝謝你的問題!看看你的同行在社區中有一個回答你的問題。否則我將盡快給你回電。謝謝。

User16829050420
貢獻者

您可以導入函數使用博客中提到的例子。//www.eheci.com/blog/2021/10/07/databricks-repos-is-now-generally-available.html

讓我知道如果這有助於你的用例?

werners1
尊敬的貢獻者三世

在回購是指正確的路徑。

回購協議是就像在任何本地文件係統。

所以你的情況下你需要notebook_in_repos文件夾. py文件包含的功能。

madhuchennu
新的貢獻者二世

我的解決方案是讓Python的附加模塊導入路徑通過添加筆記本這樣一個片段:

進口操作係統

導入係統

module_path = os.path.abspath (os.path.join (' . '))

如果module_path不在sys.path:

sys.path.append (module_path)

這允許您導入所需的功能模塊的層次結構:

從project1.lib。模塊導入功能

#正常使用功能

函數(…)

注意,有必要添加空__init__。py文件改為project1 / lib /文件夾,如果你已經沒有了。

如果你想知道更多關於函數在Python中穿過EncodingCompiler

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map