天天看點

python插件式開發中使用reload_python中reload(module)的用法示例詳解

前言

本文主要給大家介紹了關于python中reload(module)用法的相關内容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧。

1、Python2中可以和Python3中關于reload()用法的差別。

Python2 中可以直接使用reload(module)重載子產品。

Pyhton3中需要使用如下方式:

(1)

>>> from imp

>>> imp.reload(module)

(2)

>>> from imp import reload

>>> reload(module)

2、Python3中使用import和reload()出現錯誤的原因

假設recommendations.py 放在C:\Python34\PCI_Code\chapter2\目錄下,其中包含函數critics

如果在import函數的時候出現如下錯誤,

>>> from recommendation import critics

Traceback (most recent call last):

File "",line 1,in

from recommendation import critics

ImportError: No module named 'recommendation'

請把目錄C:\Python34\PCI_Code\chapter2\加到系統路徑中

>>> import sys

>>> sys.path.append("C:\Python34\PCI_Code\chapter2")

>>> from recommendations import critics

>>>

使用reload()時出現如下錯誤

>>> from imp import reload

>>> reload(recommendations)

Traceback (most recent call last):

File "",in

reload(recommendations)

NameError: name 'recommendations' is not defined

原因是因為在import reload之後需要在import 需要加載的子產品,這時候再去reload就不會有問題,具體看下面代碼:

>>> from imp import reload

>>> import recommendations

>>> reload(recommendations)

>>>

總結

以上就是這篇文章的全部内容了,希望本文的内容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對程式設計小技巧的支援。