python---引用其他py檔案中的函式
阿新 • • 發佈:2019-01-13
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow
也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!
有兩種實現方法,第一種有2個小的方法,第2個小方法比較正式
新增__init.py__
說明
在想引用的檔案所在目錄下和想執行的py目錄下,新建一個檔案: __init.py__,即可通過 相對路徑的方式引用
方法1
目錄如下:
py_test/├── a│ ├── a.py│ └── __init__.py├── b│ ├── b.py│ └── __init__.py└── __init__.py
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
a.py內容:
# coding:utf8def a(): print("I am a")
- 1
- 2
- 3
b.py內容:
# coding:utf8from ..a import aa.a()
- 1
- 2
- 3
其他檔案為空
和py_test同目錄,執行命令:
python -m py_test.b.b
- 1
即可呼叫a.py中的函式
方法2
方法1的缺點是隻能在那個路徑下執行命令,如果不想使用方法1,就只能把b.py中的程式碼封裝成一個函式,在py_test資料夾下新建c.py,通過c.py來呼叫b.py中封裝的函式,這是比較正式的做法
目錄如下:
py_test├── a│ ├── a.py │ └── __init__.py├── b│ ├── b.py│ └── __init__.py└── c.py
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
a.py內容:
# coding:utf8def a(): print("I am a")
- 1
- 2
- 3
- 4
b.py內容:
# coding:utf8from a.a import adef b(): print("I am b!") a()
- 1
- 2
- 3
- 4
- 5
- 6
- 7
c.py內容:
# coding:utf8from b.b import bb()
- 1
- 2
- 3
- 4
- 5
其他檔案為空,舉例在py_test下執行命令:
python c.py
- 1
即可正常執行
sys新增路徑
說明
將想要用的檔案所在目錄path新增到系統路徑,即可引用
主要形式如下:
import syssys.path.append(path)
- 1
- 2
使用以上形式需要注意使用絕對路徑,而且需要注意作業系統導致的路徑差異