欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python中導入自定義模塊的幾種方法總結

 更新時間:2023年01月04日 09:59:45   作者:云滿筆記  
這篇文章主要介紹了Python中導入自定義模塊的幾種方法總結,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Python導入自定義模塊的幾種方法

第一種, 直接 import

這里有個大前提, 就是你的 py 執(zhí)行文件和模塊同屬于同個目錄 (父級目錄)。

第二種, 通過 sys 模塊導入自定義模塊的 path

import sys
sys.path.append(r"C:\Users\xx\Desktop\python")

# 如果 append 后面跟的是數(shù)組, 則改用 extend
sys.path.extend([r"path1", r"path2"])

第三種, 通過 pth 文件找到自定義模塊

把模塊放入模塊路徑下

使用 print(sys.path) 可以打印模塊路徑。

Python命令行模式導入自定義類不成功及導入自定義模塊報錯ImportError

錯誤1:導入自定義類不成功

如果當前路徑 /root/ 存在Code.py文件,該文件中有函數(shù)FunctionA以及類ClassA

ps: 可以使用下面語句查看當前路徑

>>> import os
>>> os.getcwd()

返回

‘/root’

此時命令行輸入

>>> from Code import FunctionA, ClassA

報錯

ImportError: cannot import name ‘FunctionA’ from ‘Code’ (/root/Code.py)

出現(xiàn)原因

首先確定函數(shù)名及路徑是否正確,確認后發(fā)現(xiàn)該路徑明明存在對應文件和對應函數(shù),但是仍會報錯,原因是函數(shù)FunctionA或者類ClassA是在打開命令行窗口之后定義的, 就是在打開命令行之前Code.py中沒有FunctionA或者ClassA,打開命令行之后再定義FunctionA或者ClassA即會報錯。

解決辦法

重新打開命令行窗口運行導入模塊命令

錯誤2:導入自定義模塊報錯ImportError

如果當前路徑存在Code.py文件,該文件中有函數(shù)FunctionA以及類ClassA

>>> from .Code import FunctionA, ClassA

命令行輸入上面語句會報錯

ImportError: attempted relative import with no known parent package

出現(xiàn)原因

python命令行模式(或者自帶的IDLE編輯器)默認不存在包-模塊層級關系,因此無法識別父類包(但是可以使用相對位置定義文件)

解決辦法

使用絕對位置導入包

首先導入os模塊,使用os.getcwd()確定當前運行目錄(導入方式見錯誤1)

確定該路徑存在Code.py文件后使用下面絕對路徑語句導入

>>> from Code import FunctionA, ClassA

總結

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • python異常和文件處理機制詳解

    python異常和文件處理機制詳解

    這篇文章主要介紹了python異常和文件處理機制,詳細分析了Python異常處理的常用語句、使用方法及相關注意事項,需要的朋友可以參考下
    2016-07-07
  • 基于Python編寫簡單實用的日志裝飾器

    基于Python編寫簡單實用的日志裝飾器

    在寫代碼的時候,往往會漏掉日志這個關鍵因素,導致功能在使用的時候出錯卻無法溯源。這個時候只要利用日志裝飾器就能解決,本文將用Python自制一個簡單實用的日志裝飾器,需要的可以參考一下
    2022-05-05
  • python中property和setter裝飾器用法

    python中property和setter裝飾器用法

    今天小編就為大家分享一篇python中property和setter裝飾器用法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • keras修改backend的簡單方法

    keras修改backend的簡單方法

    這篇文章主要介紹了keras修改backend的簡單方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • python驗證多組數(shù)據(jù)之間有無顯著差異

    python驗證多組數(shù)據(jù)之間有無顯著差異

    這篇文章主要介紹了python驗證多組數(shù)據(jù)之間有無顯著差異,利用方差分析和卡方分布驗證多組數(shù)據(jù)之間的某些屬性有無顯著性差異,對于連續(xù)性屬性可以用方差分析,對于離散型屬性可以用卡方檢驗。下面文章詳細內(nèi)容需要的小伙伴可以參考一下
    2022-01-01
  • python-docx文檔格式修改方式

    python-docx文檔格式修改方式

    使用python-docx庫修改docx文檔格式的兩種方法:第一種是通過自定義函數(shù)設置段落和字體樣式,第二種是預設Word中的樣式后通過代碼替換文檔整體樣式。這兩種方式各有優(yōu)缺點,第一種方法更靈活,而第二種方法可以更全面地保留格式細節(jié)
    2024-09-09
  • Python元組之不可變序列的奧秘與應用方式

    Python元組之不可變序列的奧秘與應用方式

    這篇文章主要介紹了Python元組之不可變序列的奧秘與應用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • python opencv把一張圖片嵌入(疊加)到另一張圖片上的實現(xiàn)代碼

    python opencv把一張圖片嵌入(疊加)到另一張圖片上的實現(xiàn)代碼

    這篇文章主要介紹了python opencv把一張圖片嵌入(疊加)到另一張圖片上,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • 在漏洞利用Python代碼真的很爽

    在漏洞利用Python代碼真的很爽

    在漏洞利用Python代碼真的很爽...
    2007-08-08
  • pygame實現(xiàn)貪吃蛇游戲(上)

    pygame實現(xiàn)貪吃蛇游戲(上)

    這篇文章主要為大家詳細介紹了pygame實現(xiàn)貪吃蛇游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-10-10

最新評論