作者xsubarux (爆漿小雷包)
看板Python
標題[問題] 如何import 同層但不同資料夾的模組?
時間Wed Mar 25 19:53:16 2020
小弟我剛開始接觸python,在import上遇到一些問題
原本我把執行檔放在模組上層的資料夾時是可以成功import的
https://i.imgur.com/CFH7mJ0.png 但當我試著將執行檔移至新創的資料夾時,即使試了網路上教的方法,仍然無法成功讀取
下圖為網路上的教學:
https://i.imgur.com/J9mObPe.png 我試了藍框內絕對路徑和相對路徑結果都失敗了
如下兩張圖:
絕對路徑
https://i.imgur.com/8iE64pC.png 相對路徑
https://i.imgur.com/410UWHK.png 想請問是我哪裡搞錯了嗎??
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.251.71.15 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1585137198.A.9E7.html
推 bugbug777: 兩個點表示上一層,一個點為目前程式執行檔所在的資料 03/25 20:35
→ bugbug777: 夾 03/25 20:35
→ bugbug777: 你使用了..,兩個點還是要指定在那個資料夾的模組名稱 03/25 20:40
→ bugbug777: ..python_prac.modules.line 03/25 20:42
→ bugbug777: 當你使用相對的路徑搜尋模式,這裡的相對是以你目前的 03/25 20:43
→ bugbug777: 程式執行檔為參考點 03/25 20:43
→ xsubarux: 這個我之前試過也不行 03/25 20:47
→ xsubarux: 我看網路上教學是..後只有子目錄,可是不管有沒有根目 03/25 20:57
→ xsubarux: 錄都會失敗 03/25 20:57
推 bugbug777: 我還是覺得我的說明不是很精準,你就花點時間看一下官 03/25 21:03
→ bugbug777: 方的說明文件吧。 03/25 21:03
→ bugbug777: 因為python會有一個搜尋模組的參考路徑 03/25 21:04
→ bugbug777: 哈哈 我發現我一開始好像跟你說錯了,你就直接參考官 03/25 21:11
→ bugbug777: 方的教學文件比較清楚。 03/25 21:11
→ bugbug777: 你的執行程式好像跟modules是同一個資料夾,應該不用 03/25 21:13
→ bugbug777: 使用..而是使用.modules可能就可以使用了,反而是後面 03/25 21:13
→ bugbug777: 的例子,不用特別加上python_prac,而是直接用..modul 03/25 21:13
→ bugbug777: es.lines就可以吧,我猜 03/25 21:13
→ xsubarux: 可是相對路徑失敗的那張圖用的就是..modules.line耶... 03/25 21:24
→ bugbug777: 哈哈,那我只能跟你說聲抱歉了,但是官方文件說明的滿 03/25 21:28
→ bugbug777: 清楚的 03/25 21:28
→ bugbug777: 不然你試試看用cmd去跑程式看看? 03/25 21:29
→ xsubarux: 我再慢慢研究一下吧,還是感謝您 03/25 21:35
→ bugbug777: 我就再囉嗦一下吧,我看了一下它報錯是說沒有已知的 03/25 21:45
→ bugbug777: parent package,不然你就試試看,不要import那個函式 03/25 21:46
→ bugbug777: 改成from ..modules import line? 03/25 21:47
→ xsubarux: @bugbug777 我成功啦啊啊啊啊,我發現是我的sys.path 03/25 22:09
→ xsubarux: 沒有modules的路徑,所以他找不到,把他加進去就成功了 03/25 22:09
推 bugbug777: 那就恭喜你啦XDD,繼續加油!! 03/25 22:29
推 max36067: 你的vscode抓到的資料夾(terminal)位置就是你現在的位置 03/25 22:46
→ max36067: 跟樓上說的一樣 不用加python_prac 也不用..做相對位置 03/25 22:46
→ max36067: 的處理 03/25 22:46
→ max36067: 哈哈 沒看到解決了 繼續加油~ 03/25 22:47
→ xsubarux: 感謝各位!! 03/25 23:02