Python最佳实践指南!

Python最佳实践指南!

您好,地球人!欢迎来到Python最佳实践指南。

这是一份活着的、会呼吸的指南。 如果您有意一起贡献, 在GitHub fork 我!

这份人工编写的指南旨在为Python初学者和专家提供一个 关于Python安装、配置、和日常使用的最佳实践手册。

这份指南是 主观的 ,它与Python官方文档几乎,但不是完全 不同 。您在这不会找到每个Python web框架的列表。 相反,您会发现一份优秀的简明列表,包含有强烈推荐的选项。

注解

使用 Python 3高度 优先于 Python 2。如果您发现自己 仍然 在生产环境中使用 Python 2,请考虑升级您的应用程序和基础设施。如果您正在使用 Python 3,恭喜您 —— 您确实有很好的品味。 ——Kenneth Reitz

让我们开始吧!但首先,让我们确保您拥有这次旅行需要的"浴巾"。(译者注:towel 浴巾的梗引自著名科幻小说《银河系漫游指南》,大概是说先准备好不起眼但很重要的东西。)

Python入门

Python新手?让我们正确地设置您的Python环境:

  • 选择一个 Python 解释器(3 vs 2)

    • Python的现状 (2 vs 3)
    • 建议
    • 所以.... 3?
    • 实现
  • 正确地在您的系统上安装 Python

  • 正确地安装 Python

  • 在Mac OS X上安装Python 3

  • Setuptools + Pip

  • Pipenv & 虚拟环境

  • 在Linux上安装Python 3

  • 在Mac OS X上安装Python 2

  • 在Windows上安装Python 2

  • 在Linux上安装Python 2

  • 借助 Pipenv 使用虚拟环境:

  • Pipenv & 虚拟环境

    • 确保您已经有了 Python 和 pip
    • 安装 Pipenv
    • 为您的项目安装包
    • 使用安装好的包
    • 下一步
  • 更低层次: virtualenv

    • 基本使用
    • 其他注意事项
    • virtualenvwrapper
    • 基本使用
    • 其他有用的命令
    • virtualenv-burrito
    • autoenv

Python 开发环境

这部分指南关注 Python 开发环境,以及用于编写 Python 代码的可用且最实用的工具。

  • 您的开发环境
    • 文本编辑器
    • IDEs
    • 解释器工具
    • 其他工具
  • Pipenv & 虚拟环境
    • 确保您已经有了 Python 和 pip
    • 安装 Pipenv
    • 为您的项目安装包
    • 使用安装好的包
    • 下一步
  • 更低层次: virtualenv
    • 基本使用
    • 其他注意事项
    • virtualenvwrapper
    • 基本使用
    • 其他有用的命令
    • virtualenv-burrito
    • autoenv
  • Pip和Virtualenv的更多配置
    • pip 来要求一个激活的虚拟环境
    • 存下包以供将来使用

写出优雅的Python代码

这部分指南关注编写Python代码的最佳实践。

  • 结构化您的工程
    • 仓库的结构
    • 结构是一把钥匙
    • 模块
    • 面向对象编程
    • 装饰器
    • 上下文管理器
    • 动态类型
    • 可变和不可变类型
    • 提供依赖关系
    • Runners
    • 更多阅读
  • 代码风格
    • 一般概念
    • 习语(Idiom)
    • Python之禅
    • PEP 8
    • 约定
  • 阅读好的代码
  • 文档
    • 项目文档
    • 项目发布
    • 代码文档建议
    • 其他工具
  • 测试您的代码
    • 基本
    • 工具
  • 日志(Logging)
    • ... 或者打印?
    • 库中的日志
    • 应用程序中的日志
  • 常见陷阱
    • 可变默认参数
    • 延迟绑定闭包
    • 字节码(.pyc)文件无处不在!
  • 选择一个许可

Python应用的场景指南

这部分指南关注基于不同场景的工具和模块推荐。

  • 网络应用
    • HTTP
    • 分布式系统
  • Web 应用 & 框架
    • Context
    • 框架
    • Web 服务端
    • WSGI 服务器
    • 服务端最佳实践
    • Hosting
    • 模板
  • HTML 抓取
    • Web抓取
    • lxml和Requests
  • 命令行应用
    • Clint
    • Click
    • docopt
    • Plac
    • Cliff
    • Cement
    • Python Fire
  • GUI应用
    • Camelot
    • Cocoa
    • GTk
    • PyGObject aka (PyGi)
    • Kivy
    • PyObjC
    • PySide
    • PyQt
    • PyjamasDesktop (pyjs Desktop)
    • Qt
    • PySimpleGUI
    • Toga
    • Tk
    • wxPython
  • 数据库
    • DB-API
    • SQLAlchemy
    • Records
    • Django ORM
    • peewee
    • PonyORM
    • SQLObject
  • 网络
    • Twisted
    • PyZMQ
    • gevent
  • 系统管理
    • Fabric
    • Salt
    • Psutil
    • Ansible
    • Chef
    • Puppet
    • Blueprint
    • Buildout
    • Shinken
  • 持续集成
    • 为什么?
    • Jenkins
    • Buildbot
    • Tox
    • Travis-CI
  • 速度
    • Context
    • C 扩展
    • 并发
  • 科学应用
    • 背景
    • 工具
    • 资源
  • 图像处理
    • Python 图形库
    • 开源计算机视觉(OpenCv)
  • 数据序列化
    • 什么是数据序列化?
    • Flat vs. Nested data
    • 序列化文本
    • 二进制
    • Protobuf
  • XML解析
    • untangle
    • xmltodict
  • JSON
    • 解析JSON
    • simplejson
  • 密码学
    • cryptography
    • GPGME bindings
    • PyCrypto
  • 机器学习
    • SciPy 栈(SciPy stack)
    • scikit-learn
  • 与C/C++库交互
  • C语言外部函数接口(CFFI)
    • ABI 交互
    • Struct Equivalents
    • 例子: Overloading repr

部署优雅的Python代码

这部分指南关注部署您的Python代码。

  • 打包您的代码
    • 打包的多种方式
    • 对于Python开发者
    • 在Linux上分发
  • 冻结(freezing)您的代码
    • 冻结的多种方式
    • 比较冻结工具
    • Windows
    • OS X
    • Linux

额外关注

这部分指南比较零散,先了解一些Python的背景知识,再关注下一步。

  • 介绍
  • 关于这份指南
    • 目的
    • 经由社区
    • 面向社区
  • 社区
    • BDFL
  • Python软件基金会
    • PEPs
    • Python会议
    • Python用户组
    • Python 工作公告栏
  • 学习Python
    • 初学者
    • 中级
    • 进阶者
    • 工程师和科学家
    • 各种各样的话题
    • 参考
  • 文档
    • 官方文档
    • Read the Docs
    • pydoc
  • 新闻
    • PyCoder's Weekly
    • Real Python
    • Planet Python
    • /r/python
    • Talk Python Podcast
    • Python Bytes Podcast
    • Python Weekly
    • Python News
    • Import Python Weekly
    • Awesome Python Newsletter

贡献注意点和法律信息如下(给感兴趣的同学):

  • 贡献
    • 风格指南
    • 要做的事
  • 许可证
  • 风格指南指引
    • 关联
    • 标题
    • 换行
    • 代码例子
    • 外部链接
    • 指向指南内部章节的链接
    • 注意和警告
    • 要做的事

该指南原文地址:

https://pythonguidecn.readthedocs.io/zh/latest/index.html

你可能感兴趣的:(Python最佳实践指南!)