Hot For Coding
Python如何import文件夹下的文件

Python的import包含文件功能就跟PHP的include类似,但更确切的说应该更像是PHP中的require,因为Python里的import只要目标不存在就报错程序无法往下执行。要包含目录里的文件,PHP中只需要给对路径就OK。Python中则不同,下面来看看这个例子。

目录结构:

$ tree ./
./
├── a.py
└── dir
    └── b.py

a.py要import dir目录下的b.py文件。

b.py:

name = 'zhangsan'

a.py:

# coding=utf-8
"import dir 目录下的 b.py 文件"
 
import dir.b
 
print dir.b.name

执行a.py报错

╰$ python a.py 
Traceback (most recent call last):
  File "a.py", line 4, in <module>
    import dir.b
ImportError: No module named dir.b

提示找不到这个模块的名字dir.b。通过查找官方文档,发现要包含目录下的文件时需要在目录下声明一个__init__.py文件,即使这个文件是空的也可以。当然这个文件也可以初始一些数据。

╰$ tree 
.
├── a.py
└── dir
    ├── __init__.py
    └── b.py

重新执行a.py,一切OK!

╰$ python a.py
zhangsan

TITLE: Python如何import文件夹下的文件

LINK: https://www.qttc.net/214_python_import_directory.html

NOTE: 转载内容请注明出处