Other articles


  1. Python3语法速查

    一. 变量

    变量就像一个盒子,你可以把具体的内容装进去。变量需要一个名字,例如:x,然后需要给她装点东西,装东西的方法很简单,用=符号,如果我们想把1装进x里面,像这样:x=1。

    1. 我想创建整数变量
    x = 1 # 现在x里面装的是整数1
    y = 2 # 现在y里面装的是整数2
    
    1. 我想创建字符串变量
    h = '你好' # 现在h里面装的是字符串'你好'
    name = '王小明' # 现在name里面装的是字符串'王小明'
    
    1. 我想创建一个新变量,用另外一个变量初始化他
    x = 13
    y = x
    

    二. 类型

    python支持自己定义类型,不过python也有预先定义好的类型,最基础的是:整数(int),小数或者浮点数(float),字符串(str),布尔(bool …

    read more
  2. 几种Python Web Framework性能比较

    参与比较的Python框架有:tornado,flask,falcon,bottle,djiango

    测试采用ab命令。

    操作系统是:CentOS 7.2 64位。

    硬件指标:CPU: 4核 内存:8 GB。

    测试时使用2核。

    容器采用uwsgi和gunicorn

    Python采用CPython2.7和pypy5.0。

    测试代码下相应GET请求返回文字“Hello World”,没有模板,没有数据库请求等额外开销。

    测试结果:

    测试脚本“ab -n 1000 -c 100 http://192.168.0.102:9090/” 1000 测试脚本“ab -n 10000 -c 100 http://192.168 …

    read more
  3. Python数组复制的陷阱

    说是陷阱其实有点标题党,其实是最近的一次DEBUG结果。先看代码:

    a=[1]*5

    [1,1,1,1,1]

    a[0]=2

    [2,1,1,1,1]

    这段代码的含义是复制了5个‘1’作为数组,修改其中一个元素后的结果。没毛病。但是:

    b=[[1]2]2

    [[1,1],[1,1]]

    b[0][0]=2

    [[2,1],[2,1]]

    WTF!这显然不是我们想要的结果。其实问题也很简单,[object]*n=[object,object,...object],也就是说复制的是对象的引用而不是值复制 …

    read more

links

social