1. 程式人生 > >python在不同層級目錄import模組的方法

python在不同層級目錄import模組的方法

使用python進行程式編寫時,經常會使用第三方模組包。這種包我們可以通過python setup install 進行安裝後,通過import XXX或from XXX import yyy 進行匯入。不過如果是自己遍寫的依賴包,又不想安裝到python的相應目錄,可以放到本目錄裡進行import進行呼叫;為了更清晰的理清程式之間的關係,例如我們會把這種包放到lib目錄再呼叫。本篇就針對常見的模組呼叫方法彙總下。

一、同級目錄下的調有

程式結構如下:

-- src     |-- mod1.py     |-- test1.py

若在程式test1.py中匯入模組mod1, 則直接使用

import mod1 或 from mod1 import *;

二、呼叫子目錄下的模組

程式結構如下:

-- src     |-- mod1.py     |-- lib     |    |-- mod2.py     |-- test1.py

這時看到test1.py和lib目錄(即mod2.py的父級目錄),如果想在程式test1.py中匯入模組mod2.py ,可以在lib件夾中建立空檔案__init__.py檔案(也可以在該檔案中自定義輸出模組介面),然後使用:

from lib.mod2 import * 或 import lib.mod2.

三、呼叫上級目錄下的檔案

程式結構如下:

-- src     |-- mod1.py     |-- lib     |    |-- mod2.py     |-- sub     |    |-- test2.py

這裡想要實現test2.py呼叫mod1.py和mod2.py ,做法是我們先跳到src目錄下面,直接可以呼叫mod1,然後在lib上當下建一個空檔案__init__.py ,就可以像第二步呼叫子目錄下的模組一樣,通過import  lib.mod2進行呼叫了。具體程式碼如下:

1

2

3

4

import sys

sys.path.append(

"..")

import mod1

import mod2.mod2