【linux】数据分析常用Linux小命令(二)——使用ipython
python命令
在Linux系统中如果想要使用python做一些数据分析,可直接运行python命令,即可进入到python交互界面,然后我们便可以在界面上尽情编写各种python命令了。
这种交互界面一般用来做一些小的调试,执行结果可交互式地打印到屏幕上,但它并不会保存代码,所以不适用于编写比较长的脚本。
当使用完想要推出的时候,执行quit()命令即可回到linux命令界面。
ipython
python命令方便快捷,但有很多不足之处,所以我们更推荐使用ipython交互界面,它扩展了更多实用功能。
ipython的安装
如果系统安装了anaconda,可直接执行conda install ipython命令进行安装;
另一个方法可以使用pip,执行pip install ipython同样可以。
ipython的优势
- 语法高亮:写代码的都喜欢代码是高亮的,提神醒脑,否则全一色看起来不爽。
- 可直接执行shell命令:只需要前面加一个感叹号,比如!ls,!pwd,执行效果和在linux命令端执行是一样的,不需要退出ipython。当然,我就非要退出,执行个shell命令再回来行不行?也是可以的,在ipython界面中按下ctrl + z就回到了linux界面下,一通操作以后想回到ipython中,执行fg命令即可,这个相当于windows的最小化,fg再回到ipython中你会发现当时读入的那些缓存变量还都在。
- tab自动补全:这个非常方便,一是某个方法记不得全名了,打两个字母tab一下就可以找找看了;二是一个dataframe读进来,某些列名长得丧心病狂,用手一个字母一个字母去敲,不如tab一下自动补全。
- 内省:在变量前面或后面加一个?,就可以打印出这个变量的通用信息;加两个?,就可以把这个变量的源码显示出来。
ipython的魔法命令
ipython内置了很多实用的魔法命令,比如%hist、%paste等以%开头的命令,可以帮助我们更方便地交互使用ipython;在魔法命令和python变量不冲突的时候,前面的%甚至可以不写,当然还是推荐写上。
- %hist:查看历史命令,加上 -n参数可以给所有历史命令编号。
- %run:可以直接执行python脚本。
- %time:可以监测python语句的执行时间;%timeit可以多次执行,测量python语句的平均执行时间。
- %paste:当我们想要在ipython环境中测试一段python代码的时候,这个命令可以让我们把一段python代码之间粘贴过来,粘贴后自动执行。那如果我们想要测试的代码分好几段,一次粘不完怎么办呢?用%cpaste命令,可以想粘几次粘几次,粘好了以后输入ctrl+D或者–命令告诉系统粘贴完毕,ipython就开始执行这些代码了。
- %who:可以打印出所有缓存的变量的名称,%who_ls可以把所有缓存变量放在一个列表中打印;%whos显示每个变量的详细信息。