Python及一些库的小知识点汇总

Python基础

  • a[::-1]:翻转列表

解释:
a[i:j:s],当s<0时,i缺省时,默认为-1. j缺省时,默认为-len(a)-1
所以a[::-1]相当于 a[-1:-len(a)-1:-1],也就是从最后一个元素到第一个元素复制一遍。所以你看到的是倒序输出。

numpy相关

  • newaxis

np.newaxis在使用和功能上等价于None,可以看作是None的一个别名
Python及一些库的小知识点汇总_第1张图片
可以理解为新增了一个所有值都为空的维度。
Python及一些库的小知识点汇总_第2张图片

从上图可以看出,newaxis给x新增了一个Y-axis,使得x(3, )变成了(3,1)

  • 索引多维数组的某一列时返回的是一个行向量

Python及一些库的小知识点汇总_第3张图片

综合以上两点,当我们需要在索引列时返回列结构,可以用如下方式:

Python及一些库的小知识点汇总_第4张图片

所以如果要实现第2列和第4列的拼接可以用如下写法:

Python及一些库的小知识点汇总_第5张图片
其中hstackhorizontal stack(水平拼接),还有vstack为‘vertical stack’(竖直拼接)。

当然,最简单的方式还是使用切片:

在这里插入图片描述

  • 复制和视图
  1. b = a
    按址传递,b指向a的地址,改变某一个的指另一个也会改变。

Python及一些库的小知识点汇总_第6张图片

  1. numpy.view()
    可以完全对应于数据库里的视图。所以,当b = a.view(),改变a或者b的值另一个也会改变,但是改变bshape时,'a’的shape不变。

Python及一些库的小知识点汇总_第7张图片
Python及一些库的小知识点汇总_第8张图片

  1. numpy.copy()

b = a.copy()时,b为一份独立的拷贝。
Python及一些库的小知识点汇总_第9张图片

去除中间空白字符

import re
s = ' hello world \n'
re.sub(r'\s+', ' ', s)

你可能感兴趣的:(Python)