Python Pickup 2015-01-16 05:36:31 ## 语言学习 **编程规范:**官方建议:[PEP8](https://www.python.org/dev/peps/pep-0008/) 类中的私有变量:`__name`,两个连续的下划线加变量名表示私有变量,python解释器会对这样的变量名做修改,直接访问会出错。 有些时候,你会看到以一个下划线开头的实例变量名,比如`_name`,这样的实例变量外部是可以访问的,但是,按照约定俗成的规定,当你看到这样的变量时,意思就是,“虽然我可以被访问,但是,请把我视为私有变量,不要随意访问”。 ## 包管理 pip使用`requirements.txt`文件管理包依赖。 示例内容: # This is an implicit value, here for clarity --index https://pypi.python.org/simple/ MyPackage==1.0 requests==1.2.0 bcrypt==1.0.2 通过`pip install -r requirements.txt`安装依赖 ## virturalenv 可以为每个项目建立不同的/独立的Python环境,你将为每个项目安装所有需要的软件包到它们各自独立的环境中。 安装virtualenv:`sudo pip install virtualenv` 进入项目文件夹(my_project),创建独立的python环境: virtualenv --distribute my_project --distribute 选项会自动在新的虚拟环境中安装 pip,这样就不需要手动安装了。 激活virtualenv:`source bin/activate` 离开virtualenv:`deactivate` ## 通过pip和virtualenv进行依赖管理 pip 结合 virtualenv 可以为你的项目提供基本的依赖管理。 你可以通过 pip freeze 命令来查看当前已安装的包版本。下面列出的是我写着个博客所用到的包的版本: $ pip freeze -l Jinja2==2.6 PyYAML==3.10 Pygments==1.4 distribute==0.6.19 markdown2==1.0.1.19 注意 -l 选项,它告诉 pip 只导出当前活动虚拟空间中安装的包,排除那些全局空间安装的包。 你可以把结果保存到文件里,然后将它添加到你的版本控制系统里。 $ pip freeze -l > requirements.txt 同时 pip 也能从一个包含 pip freeze 命令的文件中安装包。 $ pip install -r requirements.txt ## 关于setup.py 下面是一个示例的setup.py ``` from setuptools import setup setup( name="MyLibrary", version="1.0", install_requires=[ "requests", "bcrypt", ], # ... ) ``` 将`requirements.txt`的内容简化为: ``` --index https://pypi.python.org/simple/ -e . ``` 执行`pip install -r requirements.txt`可以自动解析setup.py中的依赖项进行安装,便于维护requirements文件。 ## 常用模块 * Excel处理:xlrd * docopt * requests * sh * purl * path.py * Peewee * Pony ORM * Spyne * schema * fn.py * when.py * clize 非特殊说明,均为原创,原创文章,未经允许谢绝转载。 原始链接:Python Pickup 赏 Prev Spark Application日志输出的问题 Next Scala变量和关键字重名的问题