ipython文件_IPython 个性化指南(一)

对于命令行重度用户,定制 bash / zsh / vim / emacs 已经是基本操作了。

但是我发现现在网上对 IPython 的定制介绍少之又少。作为一名 IPython 重度用户,每天面对的软件没有漂亮的界面怎么行?所以这两天我折腾了一下 IPython 的配置,把它配置成了下图的样子:IPython 配置成果

按照我的需求,主要有以下几点:启动时显示必要信息:Python 版本,IPython 版本,以及当前 Python 解释器的路径(如果你经常切换虚拟环境的话,就知道有多必要了);

命令提示符显示当前路径;

命令提示符显示上一条命令运行时长;

自动导入一些常用的包(os, sys, time, datetime, functools, math ...);

一些方便的命令别名(按 q 退出,按 .. 跳到上一层目录,按 np 导入 numpy ...)

好了,话不多说,开始干活。

配置文件

首先要找到你的 IPython 配置文件。一般在 ~/.ipython/profile_default,如果你没有这个文件夹,可以运行下面的命令生成一个:

ipython profile create

这个文件夹下面应该有以下文件:

其中 ipython_config.py 是我们首先需要配置的。ipython_config.py

这个文件有点长,但是逻辑很简单,就是每个变量一个功能,通过给不同的变量赋值,就能实现对应的功能。

修改启动提示(Banner)

我们首先要修改的是 c.InteractiveShell.banner1,这个变量就是我们每次打开 IPython 会看到的那个东西:

Ipython 每次都会显示的这句话大部分对我其实没什么用,我一般只看第一行,看我打开的是 Python2 还是 Python3. 所以我决定把它改成比较有用的信息:

import sys

import IPython

c.InteractiveShell.banner1 = \

' Python\t: ' + sys.version.replace('\n', ' ') + '\n' + \

' IPython\t: ' + IPython.__version__ + '\n' \

' Interpreter\t: ' + sys.executable + '\n'

很简单的代码:sys.version 是 Python 的版本说明,记得压成一行。

IPython.__version__ 是 IPython 版本号,这个不一定所有人都需要,看你自己需求。

sys.executable 是当前所用 Python 解释器的路径,打开 IPython 的时候看一眼自己在用哪个解释器,省的打一堆代码然后发现虚拟环境不对浪费时间。

OK,再次启动 IPython,你就可以看到下面的启动提示了:

这个配置文件里还有一些其他内容,我觉得比较有用的有:c.TerminalIPythonApp.force_interact,这个变量设置为 True 的话,你以后再用 ipython foobar.py 的方式运行 Python 文件,文件运行结束后,会自动进入交互解释器。

c.InteractiveShell.autocall,把这个变量设置为 1,你以后就可以用这样的方法调用 Python 函数:

有点 shell 内味儿了。c.InteractiveShell.show_rewritten_input 与上一条一起用,设置成 False,禁用 autocall 触发时的提示。

c.TerminalInteractiveShell.editing_mode,vim 用户不能错过,把它赋值为 'vi',你会爽到飞起。

c.TerminalInteractiveShell.extra_open_editor_shortcuts,设置为 True,你以后就可以按 v 用 vim 打开你正在编辑的 cell。

ipython_config.py 能配置的东西就这么多了。更 fancy 的东西(命令提示符定制,命令别名,自动导入)我放在了下一次,记得点个赞再走~SleepyBag:IPython 个性化指南(二)​zhuanlan.zhihu.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值