1. 程式人生 > 程式設計 >python 成功引入包但無法正常呼叫的解決

python 成功引入包但無法正常呼叫的解決

問題

python中 import ** 成功,但是不能呼叫它的函式或者屬性,如下圖所示

python 成功引入包但無法正常呼叫的解決

python 成功引入包但無法正常呼叫的解決

原因

log 和 setting 在python中屬於自帶的庫函式。再重寫 log 和 setting 函式檔案後,即使成功引入,如果沒有加標識,會預設呼叫自帶的庫函式。

本質原因:python2 和 python3 版本存在差異,很多問題看看python官網就很容易理解

解決辦法

重寫python自帶庫函式,例如 log 庫函式,經常會被重寫。一定要注意新增字首,來避免呼叫到預設的,且在任何用到該重寫檔案*.py內函式,都要加字首

本人另一篇文章對包引用有詳細介紹 https://www.jb51.net/article/182291.htm

python 成功引入包但無法正常呼叫的解決

python 成功引入包但無法正常呼叫的解決

補充知識:python對庫函式的引用方法

python引入庫的方法有很多種,這裡主要介紹一下其中的兩種:

第一種引用方式:在程式頭部增加:

如:import<庫名>

例如:

import turtle
>>>import turtle
>>>turtle.fd(30)

這種方式引用庫函式需要輸入<庫名>.<函式名>(庫名點函式名)

第二種引用方式:

from<庫名>import<函式名>或者from<庫名>import*

例如:

>>>from turtle import*

>>>fd(100)

這種引用方式可以直接使用函式,不需要再加庫名點

但是第一種方式使用者可以重新定義一個函式叫fd,fd的功能可以是任意功能。第二種不可以重新定義fd函式,因為庫turtle函式是直接呼叫的,但一般情況下兩種引入方式沒有什麼區別。

有時候我們引入的庫函式的名字比較長,但是我們在後面還需要經常使用這個庫函式,這個時候我們就可以給這個庫函式起一個比較簡短的別名來使用,比如我們將turtle這個庫函式命名為t:import turtle as t。這樣書寫我們就可以在後面的程式碼中用t來代替turtle了。比如之前我們要這樣寫來使畫筆移動到(20,10)的位置:turtle.goto(20.10),但是使用import turtle as t之後就可以這樣寫:t.goto(20,10)是不是簡便很多了呢。

以上這篇python 成功引入包但無法正常呼叫的解決就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。