我是Python的新手,我正在开始一个迷你项目,但我对如何以"Python方式“组织文件夹有一些疑问。
我在开发环境中使用PyDev,当我创建一个新项目时,会创建一个名为src的文件夹
+ src现在,我可以在PyDev中创建Pydev Module和PyDev Package
我需要用以下方式组织我的项目:
+ Indicators
- Moving_averages.py
- Stochastics.py
+ Strategies
- Moving_averages_cross.py
- example.py我该如何根据模块和包来组织它呢?模块和包的含义是什么?
发布于 2011-03-01 21:40:27
包基本上是一个文件夹,在它下面有__init__.py文件,通常还有一些模块,其中模块是一个*.py文件。它主要与import有关。如果您将__init__.py添加到指标,则可以使用:
from Indicators.Stochastics import *或
from Indicators import Stochastics顺便说一下,我建议模块/包名称保持小写。它不会影响功能,但更多的是"pythonic“。
发布于 2011-03-01 21:49:35
从文件系统的角度来看,模块是以.py结尾的文件,包是包含模块和(嵌套的)包的文件夹。如果文件夹包含__init__.py文件,Python会将其识别为包。
像这样的文件结构
some/
__init__.py
foofoo.py
thing/
__init__.py
barbar.py定义包some,它有一个模块foofoo和一个嵌套的包thing,后者又有一个模块barbar。但是,在使用包和模块时,您并没有真正区分这两种类型:
import some
some.dothis() # dothis is defined in 'some/__init__.py'
import some.foofoo # <- module
import some.thing # <- package在选择命名您的包/模块时,请遵循PEP8 (即使用小写名称)。
发布于 2013-01-23 12:06:57
目录结构
.
|-- bin
| `-- my_program
|-- docs
| `-- doc.txt
|-- my_program
| |-- data
| | `-- some_data.html
| |-- __init__.py
| |-- submodule
| | `-- __init__.py
| |-- helpers.py
|-- tests
| |-- __init__.py
| |-- test_helpers.py
|-- Makefile
|-- CHANGES.txt
|-- LICENSE.txt
|-- README.md
|-- requirements-dev.txt
|-- requirements.txt
`-- setup.pycat 生成文件
PYTHON=`which python`
NAME=`python setup.py --name`
all: check test source deb
init:
pip install -r requirements.txt --use-mirrors
dist: source deb
source:
$(PYTHON) setup.py sdist
deb:
$(PYTHON) setup.py --command-packages=stdeb.command bdist_deb
rpm:
$(PYTHON) setup.py bdist_rpm --post-install=rpm/postinstall --pre-uninstall=rpm/preuninstall
test:
unit2 discover -s tests -t .
python -mpytest weasyprint
check:
find . -name \*.py | grep -v "^test_" | xargs pylint --errors-only --reports=n
# pep8
# pyntch
# pyflakes
# pychecker
# pymetrics
clean:
$(PYTHON) setup.py clean
rm -rf build/ MANIFEST dist build my_program.egg-info deb_dist
find . -name '*.pyc' -deletehttps://stackoverflow.com/questions/5155135
复制相似问题