Bottle 源码阅读(二) -- Python 项目的开源到 Pypi 服务器



Pypi 服务, 类似 Java 的 maven 仓库, 用来托管开源的 Python 模块. 发布 Python 模块, 必须要配置好 setup.py 等配置文件.

一般待发布的项目目录, 大概有下面文件

.
|-- LICENSE.txt
|-- MANIFEST.in
|-- README.rst
|-- data
|   `-- data_file
|-- sample
|   |-- __init__.py
|   `-- package_data.dat
|-- sample.egg-info
|   |-- PKG-INFO
|   |-- SOURCES.txt
|   |-- dependency_links.txt
|   |-- entry_points.txt
|   |-- requires.txt
|   `-- top_level.txt
|-- setup.cfg
|-- setup.py
|-- tests
|   |-- __init__.py
|   |-- __init__.pyc
|   |-- __pycache__
|   |   `-- test_simple.cpython-27-PYTEST.pyc
|   `-- test_simple.py
`-- tox.ini

阅读全文 »


Bottle 源码阅读(一) -- 使用 Travis CI 及 Coveralls 持续集成



Clone 下来 Bottle 源码后, 逐个文件分析, 发现 .travis.yml 文件中的配置比较有意思, 如下图. Google 了一下, 发现是 Github 项目持续集成用的.

language: python
sudo: required

python:
  - "2.7.3" # Ubuntu 12.4LTS (precise) and Debian 7 LTS (wheezy)
  - "2.7"
  - "3.3"
  - "3.4"
  - "3.5"
  - "3.6"
  - "nightly"

install:
  - travis_retry bash test/travis_setup.sh

script:
  - python -m coverage run --source=. test/testall.py fast
  - python -m coverage combine
  - python -m coverage report 2>&1

notifications:
  irc: "irc.freenode.org#bottlepy"
  on_success: "never"

after_success:
  coveralls

1. 什么是 Travis 和 Coveralls

Github 项目经常会看到类似 图标, 分别对应了 Travis 和 Coveralls.

Travis-CI是一个开源的持续构建项目,同步你在GitHub上托管的项目,每当你Commit Push之后, 就会在几分钟内开始按照你的要求测试部署你的项目, 并跑一遍测试用例.

Coveralls 是用来显示项目代码覆盖率的.

阅读全文 »


数据结构--Python



Python 数据结构笔记

1. STACK

1.1 栈的定义

栈: 官方定义, 一种特殊的串行数据结构, 只允许在一端进行加入数据与取出数据操作.

1.2 栈的例子

两个例子:

  • 桌面上的一摞书

  • 浏览器后退按钮

浏览器有个后退按钮, 每次点击, 跳转到最靠近当前页的 URL. (实际上, 进行的是 URLS 出栈操作).

image

阅读全文 »


Git 常用命令整理



Git 诞生

BitMover 禁止 Linux 社区免费使用, 于是 Linus 花了两周时间自己用C写了一个分布式版本控制系统.

Git 账户的初始化可以查看文章 Github 账户本地初始化. 下面是 git 命令的整理:

Git 常用命令

1. 初始化

# 本地目录初始化
git init
# 远程下载
git clone <repo_url>

阅读全文 »


免费的中文编程书



添加一个 iframe, 内容是 Github free-programming-books, 优先保存一下中文书籍.

阅读全文 »