Python import同級目錄報錯

2021-10-02 15:48:34 字數 1025 閱讀 3213

pycharm不會將當前檔案目錄自動加入自己的sourse_path。右鍵make_directory as-->sources root將當前工作的資料夾加入source_path就可以了。

還有一點:

models加乙個點,表示同級目錄。from .models import classn

import功能實際應用還有很多坑:

比如,不通過模組名字,直接引入模組內的類 

我們建立乙個包叫ccc,然後下面的init裡面什麼也沒寫,都是空的 

然後bbb.by裡面的內容是:

def a():

print (1)

如果你要訪問這個函式a 

首先第一點,乙個寫法: 

from ccc.bbb import a ,注意,他只能通過 包名.模組名來import具體函式 

如果你直接用from ccc import a ,是會報警的,報警如下:

>>> from ccc import a

traceback (most recent call last):

file "", line 1, in importerror: cannot import name 'a'

其實,關鍵是,如果你要通過from ccc import a,重要的是init的內容 

如果我們把init內容寫成下圖3 

from .bbb import a,這裡面的 .bbb是什麼意思呢?就是在同級目錄下面的bbb模組,如果前面是2個點,那就是上級目錄的bbb

現在,要講乙個重要概念!!! 

當你匯入乙個包的時候,實際上是匯入了這個包的init.py的檔案,所以,如果你在init裡面寫入了其他的import功能,就等於是在初始化的時候幫忙匯入了其他東西。 

就比如下面的例子,他在導包的時候,就順便匯入了a這個函式!! 

Python import同級目錄報錯

pycharm不會將當前檔案目錄自動加入自己的sourse path。右鍵make directory as sources root將當前工作的資料夾加入source path就可以了。還有一點 models加乙個點,表示同級目錄。from models import classn import功...

Python import過程解析

模組 乙個.py檔案 包 乙個資料夾,裡面一定包括乙個 init py檔案,可能包括子包和模組 module.py a 1 print module.py test.py import module print module.a 執行test.py,執行結果 module.py 1結論 import...

python import模組方法

python語言中import的使用很簡單,直接使用import module name語句匯入即可。這裡我主要寫一下 import 的本質。模組 module 用來從邏輯 實現乙個功能 上組織python 變數 函式 類 本質就是 py檔案。檔案是物理上組織方式 module name.py 模組...