# 集合
# 子產品
# 通常來說,比較正規的工程不會把所有代碼放在一個py檔案裡,我們會把代碼拆成各個子產品,分别調用。對python來說,拆成各個子產品可以看做拆成各個py檔案。
# 搜尋路徑
# 通常來說,同檔案夾下的py檔案可以直接import。
def print_hello():
print("hello")
# 我們把這個儲存至hello.py
import hello
hello.print_hello()
# 在run.py裡import,然後調用print_hello() 目錄結構
# ...../
hello.py
run.py
# hello.py和run.py在同一目錄下,可以直接import 如果在不同路徑下,可以在sys.path裡手動加入你想import的路徑
import sys
sys.path.append('/home/yixin/course')
import hello
hello.print_hello()
# 如果run.py不在/home/yixin/course檔案夾下,手動加入這個路徑,就可以import這個路徑下的hello.py
# ----------------------------------------------------------------------------------------------------
# 通常一個工程不可能隻有一層目錄結構,并且也不會一個一個path去append到sys裡,常用的做法是包,一個目錄及其子目錄組成的一個包(可以看做一個庫)。 舉個例子
#
"""/home/yixin/course
├── __init__.py
├── __init__.pyc
├── m1
│ ├── b.py
│ ├── b.pyc
│ ├── __init__.py
│ ├── __init__.pyc
│ └── m1_1
│ ├── a.py
│ ├── a.pyc
│ ├── __init__.py
│ └── __init__.pyc
└── m2
├── __init__.py
└── run.py
"""