Python 彩色命令行输出
效果:
下面描述如何来实现。
效果:
下面描述如何来实现。
1 | sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)" |
1 | sudo usermod -s /bin/zsh $(whoami) |
1 | git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf |
1 | git config --global alias.st status |
在使用Numpy的时候,有时候会遇到下面的错误:
1 | AttributeError: incompatible shape for a non-contiguous array |
看报错的字面意思,好像是不连续数组的shape不兼容。
有的时候,在看别人代码时会时不时看到ascontiguous()
这样的一个函数,查文档会发现函数说明只有一句话:“Return a contiguous array (ndim >= 1) in memory (C order).”
光靠这些信息,似乎没能道出Numpy里面contiguous array和non-contiguous array有什么区别,以及为什么需要进行ascontiguous
操作?带着这些疑问,我搜了比较多的资料,在stack overflow上发现一个比较详细的回答,简单明白地将Numpy里面的数组的连续性问题解释清楚了,因此这里翻译过来,希望能帮助到别的有同样疑问的小伙伴。
所谓C order
,指的是行优先的顺序(Row-major Order),即内存中同行的存在一起,而Fortran Order
则指的是列优先的顺序(Column-major Order),即内存中同列的存在一起。这种命名方式是根据C语言和Fortran语言中数组在内存中的存储方式不同而来的。Pascal, C,C++,Python都是行优先存储的,而Fortran,MatLab是列优先存储的。
今天无意中发现了这个vim-plug这个简洁又高效的Vim插件管理工具,试了下,安装插件简直没法再容易,大大减小了配置难度,对于我这种既想要Vim及插件强大的功能但又不想花费太多时间到配置上的懒人来说,Vim-plug简直就是神器了。
借用作者的原话,Vim-plugin有下面的优点:
- Easier to setup: Single file. No boilerplate code required.
- Easier to use: Concise, intuitive syntax
- Super-fast parallel installation/update (with any of +job, +python, +python3, +ruby, or Neovim)
- Creates shallow clones to minimize disk space usage and download time
- On-demand loading for faster startup time
- Can review and rollback updates
- Branch/tag/commit support
- Post-update hooks
- Support for externally managed plugins
既然配置又简单,功能又强大,为甚不小小折腾一番,提高工作效率呢?下面我以在Vim中安装一个Python的检查器为例,对Vim-plugin的使用进行说明。