这里你将学会如何建立一个项目“骨架”目录。这个骨架目录具备让项目跑起来的所有基本内容。它里边会包含你的项目文件布局、自动化测试代码,模组,以及安装脚本。当你建立一个新项目的时候,只要把这个目录复制过去,改改目录的名字,再编辑里边的文件就行了。
骨架内容
首先使用下述命令创建你的骨架目录:
~ $ mkdir -p projects ~ $ cd projects/ ~/projects $ mkdir skeleton ~/projects $ cd skeleton ~/projects/skeleton $ mkdir bin NAME tests docs
我使用了一个叫 projects 的目录,用来存放我自己的各个项目。然后我在里边建立了一个叫做 skeleton 的文件夹,这就是我们新项目的基础目录。其中叫做NAME 的文件夹是你的项目的主文件夹,你可以将它任意取名。
接下来我们要配置一些初始文件:
~/projects/skeleton $ touch NAME/__init__.py ~/projects/skeleton $ touch tests/__init__.pyWindows操作系统:(新建文件指令)
F:\projects\skeleton>type nul> NAME/__init__.py F:\projects\skeleton>type nul> tests/__init__.p
以上命令为你创建了空的模组目录,以供你后面为其添加代码。然后我们需要建立一个 setup.py 文件,这个文件在安装项目的时候我们会用到它:
try:
from setuptools import setup
except ImportError:
from distutils.core import setup
config ={
'description':'My Project',
'author':'My Name',
'url':'URL to get it at.',
'download_url':'Where to download it.',
'author_email':'My email.',
'version':'0.1',
'install_requires':['nose'],
'packages':['NAME'],
'scripts':[ ],
'name':'projectname'
}
setup(**config)
编辑这个文件,把自己的联系方式写进去,然后放到那里就行了。
最后你需要一个简单的测试专用的骨架文件叫 tests/NAME_tests.py:
from nose.tools import *
import NAME
def setup():
print("SETUP!")
def teardown():
print("TEAR DOWN!")
def test_basic():
print("I RAN!")
Python 软件包的安装
接下来你需要安装下面的软件包:
- pip – http://pypi.python.org/pypi/pip
- distribute – http://pypi.python.org/pypi/distribute
- nose – http://pypi.python.org/pypi/nose/
- virtualenv – http://pypi.python.org/pypi/virtualenv
测试你的配置
安装了所有上面的软件包以后,你就可以做下面的事情了:F:\projects\skeleton>nosetests
.
----------------------------------------------------------------------
Ran 1 test in 0.007s
OK
使用这个骨架
剃牦牛的事情已经做的差不多了,以后每次你要新建一个项目时,只要做下面的事情就可以了:
- 拷贝这份骨架目录,把名字改成你新项目的名字。
- 再将 NAME 模组更名为你需要的名字,它可以是你项目的名字,当然别的名字也行。
- 编辑 setup.py 让它包含你新项目的相关信息。
- 重命名 tests/NAME_tests.py ,让它的名字匹配到你模组的名字。
- 使用 nosetests 检查有无错误。
- 开始写代码吧。
小测验
这节练习没有加分习题,不过需要你做一个小测验:
- 找文档阅读,学会使用你前面安装了的软件包。
- 阅读关于 setup.py 的文档,看它里边可以做多少配置。Python 的安装器并不是一个好软件,所以使用起来也非常奇怪。
- 创建一个项目,在模组目录里写一些代码,并让这个模组可以运行。
- 在 bin 目录下放一个可以运行的脚本,找材料学习一下怎样创建可以在系统下运行的 Python 脚本。
- 在你的 setup.py 中加入 bin 这个目录,这样你安装时就可以连它安装进去。
- 使用 setup.py 安装你的模组,并确定安装的模组可以正常使用,最后使用 pip 将其卸载。