Python & Numpy Trick

关于科学计算中Python Numpy 的使用经验。

Numpy 中的广播机制

  • 可以对列进行运算,对行进行运算。


    Python & Numpy Trick_第1张图片
  • 分列进行运算:


    Python & Numpy Trick_第2张图片
  • 当维度不一样进行运算的时候,会对行进行扩增,或者对列进行扩增。

矩阵 or 向量

  • 在初始化一个行向量或者列向量的时候,使用
a = np.random.randn(5,1) 或者
a = np.random.randn(1,5)
  • 而不是使用
a = np.random.randn(5) 
a.shape -->(5,)
  • 定义成二维行向量或者列向量的形式,可以进行转置等符合我们预期的操作。

  • 如果得到 shape 为 (5,) 的数组,可以使用reshape 函数进行转化。使得矩阵或者向量是需要的维度。

使用 assert(a.shape == (5,1))

  • 执行速度快
  • 有益于代码的理解

更多

  • enumerate() 进行枚举
  • 字典集合进行解析
  • 数列进行逆序
  • if-else 语句替换 -?-:- 语句
  • 全局变量命名加 g, 参数变量加 _ ,
  • 级联比较
  • 使用** 而不是使用 pow 函数
  • 使用json 作为字符串序列化工具,效率快。

更多详情[ http://blog.csdn.net/wsliangjian/article/details/51444210 ]

你可能感兴趣的:(Python & Numpy Trick)