如何調用另一個python文件中的代碼
無論我們選擇用何種語言進行程序設計時,都不可能只有一個文件(除了“hello world”),通常情況下,我們都需要在一個文件中調用另外一個文件的函數呀數據等等,總之要操作其他文件中的代碼,在java中,只要在同一個文件目錄下,我們就不需要通過import導入,但是在Python中,我們就需要通過import來進行導入,這樣我們才能應用其他文件中定義的函數和數據等代碼。 對於剛接觸python的我們,這是我們需要掌握的。
下面就以兩個文件為例,例如我們有a.py和b.py兩個文件,當我們需要在b.py文件中應用a.py中的func( )函數時,應該如何做呢,有兩種情況,分別為在同一文件目錄下和不在同一目錄下進行說明。
同一文件目錄下
在b.py文件中用下面兩條語句即可完成對a.py文件中func( )函數的調用
import a #引用模塊
a.func( )
或者是
import a#應用模塊
from a import func #引用模塊中的函數
func() #這里調用函數就不需要加上模塊名的前綴了
不同文件目錄下
若不在同一目錄,python查找不到,必須進行查找路徑的設置,將模塊所在的文件夾加入系統查找路徑
import sys
sys.path.append(‘a.py所在的路徑’)
import a
a.func()
pycharm環境下:同文件夾下文件(.py)之間的調用,出現紅線問題
只要將pycharm下打開項目后:
將你運行文件(.py)的項目設置為根目錄,就不會出現紅色線;
問題描述:
在pycharm中導入自己寫的模塊時,得不到智能提示,並在模塊名下出現下紅線,但是代碼可以執行,錯誤提示為下圖所示:
原因:出現 以上情況,是因為文件目錄設置的問題,pycharm中的最上層文件夾是項目文件夾,在項目中導包默認是從這個目錄下尋找,當在其中再次建立目錄,目錄內的py文件如果要導入當前目錄內的其他文件,單純的使用import導入,是得不到智能提示的,這是pycharm設置的問題,並非導入錯誤。
舉例:目錄結構如下
解決辦法: