1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| # 模块 # 通常来说,比较正规的工程不会把所有代码放在一个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 """
|