国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Python ImportError: cannot import name

focusj / 901人閱讀

摘要:要避免錯誤,要保證在導(dǎo)入模塊中內(nèi)容時,此內(nèi)容在程序執(zhí)行到此處時已定義。改為中的實際示例導(dǎo)入定義使用導(dǎo)入使用導(dǎo)入使用文件改為定義導(dǎo)入使用

Python 項目逐漸增大,循環(huán)導(dǎo)入時,一不留神可能碰到錯誤:

ImportError: cannot import name ‘

出現(xiàn)此問題一般是因為在導(dǎo)入模塊時順序上了問題
看如下例子:

./test
    ├── main.py
    ├── sub_a.py
    ├── sub_b.py
# main.py
from sub_a import x
print(x + 1)
# sub_a.py
from sub_b import b

a = 1
x = a + b
print(x)
# sub_b.py
from sub_a import a
b = a + 1

運行:

python module_a.py
Traceback (most recent call last):
  File ".main.py", line 1, in 
    from sub_a import x
  File "~	estsub_a.py", line 1, in 
    from sub_b import b
  File "~	estsub_b.py", line 1, in 
    from sub_a import a
ImportError: cannot import name "a"

main.py進入sub_a.py 中執(zhí)行from sub_b import b語句,在這里程序進入sub_b.py中執(zhí)行,"sub_a.py"程序暫停執(zhí)行,此時需要在sub_b.py使用的sub_a.py 中的 a = 1 變量還沒有生成,因此出現(xiàn)了上述錯誤。

要避免錯誤,要保證在導(dǎo)入模塊中內(nèi)容時,此內(nèi)容在程序執(zhí)行到此處時已定義

module_a.py 改為:

a = 1
from sub_b import b
x = a + b
Flask 中的實際示例:
# app.py

from flask_mongoengine import MongoEngine
# 導(dǎo)入
from .views.main import main as main_blueprint

# 定義
db = MongoEngine()

# 使用
app.register_blueprint(main_blueprint)
# views.main.py

# 導(dǎo)入
from user import User

# 使用
Users.objects()            
# users.py

# 導(dǎo)入
from app import db            

# 使用
class Users(db.Document):
    id = db.StringField(primary_key=True)
    name = db.StringField(required=True)

app.py 文件改為:

# app.py

from flask_mongoengine import MongoEngine

# 定義
db = MongoEngine()


# 導(dǎo)入
from .views.main import main as main_blueprint
# 使用
app.register_blueprint(main_blueprint)

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/40726.html

相關(guān)文章

  • caffe Ununtu 16.04.4開發(fā)環(huán)境配置(CPU版)

    摘要:是一種常用的深度學(xué)習(xí)框架,主要應(yīng)用在視頻圖像處理方面的應(yīng)用上。由于沒錢買,只能在虛擬機環(huán)境下配置版開發(fā)環(huán)境,大家勿笑。 caffe是一種常用的深度學(xué)習(xí)框架,主要應(yīng)用在視頻、圖像處理方面的應(yīng)用上。由于沒錢買gpu,只能在虛擬機環(huán)境下配置Ubuntu CPU版caffe開發(fā)環(huán)境,大家勿笑。 1.首先,先安裝依賴庫: sudo apt-get install libprotobuf-dev...

    2shou 評論0 收藏0
  • Scrapy:python3下的第一次運行測試

    摘要:,引言的架構(gòu)初探一文講解了的架構(gòu),本文就實際來安裝運行一下爬蟲。第一次運行的測試成功,接下來的工作接下來,我們將使用來實現(xiàn)網(wǎng)絡(luò)爬蟲,省掉對每個人工去生成和測試的工作量。,文檔修改歷史,首次發(fā)布 1,引言 《Scrapy的架構(gòu)初探》一文講解了Scrapy的架構(gòu),本文就實際來安裝運行一下Scrapy爬蟲。本文以官網(wǎng)的tutorial作為例子,完整的代碼可以在github上下載。 2,運行環(huán)...

    dack 評論0 收藏0
  • Python - 安裝opencc ImportError: no module named dis

    摘要:當(dāng)通過方式安裝時,可能會遇到以下錯誤。總結(jié)下來,共找到以下兩種方法方法一下載,解壓后,把放到目錄下,重新執(zhí)行命令。但是通過上面發(fā)現(xiàn),之所以會出錯,是因為目錄下的選擇了的安裝方式。最后,通過源碼重新編譯即可安裝成功。把中的獲取,直接改為 當(dāng)通過pip方式安裝opencc時,可能會遇到以下錯誤:ImportError: No module named distribute_setup。 p...

    Simon 評論0 收藏0
  • Embedding Python modules into C applications.

    In official Doc. of Python 3, there is a short introduction to embedding Python in another application like C/C++ (seeEmbedding Python in Another Application). The common procedure is as follows, w...

    youkede 評論0 收藏0
  • 升級Python導(dǎo)致的yum,pip報錯解決方案

    摘要:服務(wù)器上版本過低,升級為,而未升級,導(dǎo)致在執(zhí)行時報這個錯誤。報錯報錯解決方案查看版本,執(zhí)行可以查看到存在兩個版本的。將原有的改為老版本跳出再次執(zhí)行,即可使用。解決方案方法一同,不建議。 原因: yum是Python寫的。服務(wù)器上Python版本過低,升級為2.7,而yum/pip未升級,導(dǎo)致在執(zhí)行yum/pip時報這個錯誤。yum報錯: There was a problem impo...

    BoYang 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<