IPython:一种交互式计算和开发环境(魔术命令,快捷键)
%run命令
在IPython会话环境中,所有文件都可以通过%run命令当做Python程序来运行。
假设在ipython_script_test.py中存放了一段简单的脚本,如下所示:
def f(x,y,z):
return (x+y)/z
a=5
b=6
c=7.5
result=f(a,b,c)
只要将文件名传给%run就可以运行
in[550]: %run ipython_sricpt_test.py
脚本是在一个空的命名空间中运行的(没有任何import,也没有定义任何其他的变量)所以其行为
应该在标准命令行环境(通过python script.py启动的)中执行时一样,此后,该文件中所定义的
全部变量(还有各种import,函数和全局变量)就可以在当前IPython shell中访问 。
In[551]:c
Out[551]:7.5
如果Python脚本需要用到命令行参数,可以将参数放到文件路径的后面
中断正在执行的代码
在任何代码在执行时,只要按下“Ctrl-C”,就会引发一个KeyboardInterrupt。除一些非常特殊的情况之外,绝大部分Python程序都将立即停止执行
执行剪贴板中的代码
1.在多数情况下,可以通过"Ctrl-Shift-V"将剪贴板中的代码片段粘贴出来(Windows中需要右键菜单中粘贴功能,否则只显示一行)
但这种方法有其局限性,因为这种粘贴方式模拟的是在IPython中逐行输入代码,换行符会被处理为<return>
2.使用%paste和%cpaste这两个魔术函数
发现代码有错,"Ctrl-C"即可终止%cpaste提示符
IPython跟编辑器和IDE之间的交互
某些文本编辑器(如Emacs和Vim)带有一些能将代码块直接发送到IPython shell的第三方扩展
键盘快捷键
| 命令 | 说明 |
| Ctrl-P或上箭头 | 后向搜索命令历史中以当前输入的文本开头的命令 |
| Ctrl-N或下箭头 | 前向搜索命令历史中以当前输入的文本开头的命令 |
| Ctrl-R | 按行读取的方向历史搜索(部分匹配) |
| Ctrl-Shift-v | 从粘贴板粘贴文本 |
| Ctrl-C | 中止当前正在执行的代码 |
| Ctrl-A | 将光标移到行首 |
| Ctrl-E | 将光标移到行尾 |
| Ctrl-K | 删除从光标开始至行尾的文本 |
| Ctrl-U | 清除当前行的所有文本 |
| Ctrl-F | 将光标向前移动一个字符 |
| Ctrl-b | 将光标向后移动一个字符 |
| Ctrl-L | 清空 |
异常和跟踪
如果%run某段脚本或执行某条语句时发生了异常,IPython默认会输出整个调用栈跟踪(traceback)
其中还会附上调用栈各点附近的几行代码作为上下文参考。
魔术命令
IPython的一些特殊命令(Magic Command),它们有的为常见任务提供便利,有的则使你能轻松控制IPython系统地行为。
魔术命令是以%为前缀的命令
常用的IPython魔术命令
| %quickref | 显示IPython的快速参考 |
| %magic | x显示所有魔术命令的详细文档 |
| %debug | c从最新的异常跟踪的底部进入交互式调试器 |
| %hist | d打印命令的输入(可选输出)历史 |
| %pdb | z在异常发生后进入调试器 |
| %paste | z执行剪贴板中的Python代码 |
| %cpaste | d打开一个特殊提示符以便于手工粘贴待执行的Python代码 |
| %reset | c删除interactive命令空间中的全部变量/名称 |
| %page OBJECT | t通过分页器打印输出OBJECT |
| %run script.py | z在IPython中执行一个Python脚本文件 |
| %prun statement | t通过cProfile执行statement,并打印分析器的输出结果 |
| %time statement | b报告statement的执行时间 |
| %timeit statement | d多次执行statement以计算系统平均执行时间。对那些执行时间非常小的代码很有用 |
| %who,%who_ls,%whos | x显示interactive命令空间中定义的变量,信息级别/冗余度可变 |
| %xdel variable | s删除variable,并尝试清除其在IPython中的对象的一切引用 |
IPython:一种交互式计算和开发环境(魔术命令,快捷键)的更多相关文章
- IPython:一种交互式计算和开发环境
IPython基础 可以通过命令行启动IPython,执行任何Python语句,只需将其输入然后回车. Tab键自动完成 在Shell中输入表达式时,只要按下Tab键,当前命名空间中任何与已输入的字符 ...
- IPython:一种交互式计算和开发环境
一 键盘快捷键 - Ctrl-P 或上箭头键 后向搜索命令历史中以当前输入的文本开头的命令 - Ctrl-N 或下箭头键 前向搜索命令历史中以当前输入的文本开头的命令 - Ctrl-R ...
- IPython+:一个交互式计算和开发环境
一. IPython基础 代码自动补全:Tab键 可补全内容包括:变量名.函数名.成员变量函数.目录文件 内省(Itrospection) 在变量名之前或之后加上问号(?),这样可以显示这个对象的相关 ...
- jupyter notebook :一个交互式计算和开发环境
一. IPython基础 代码自动补全:Tab键 可补全内容包括:变量名.函数名.成员变量函数.目录文件 内省(Itrospection) 在变量名之前或之后加上问号(?),这样可以显示这个对象的相关 ...
- 交互式计算和开发环境:IPython
- iOS系统提供开发环境下命令行编译工具:xcodebuild
iOS系统提供开发环境下命令行编译工具:xcodebuild[3] xcodebuild 在介绍xcodebuild之前,需要先弄清楚一些在XCode环境下的一些概念[4]: Workspace:简单 ...
- Java开发环境之------MyEclipse快捷键和排除错误第一选择ctrl+1(***重点***:ctrl+1,快速修复---有点像vs中的快速using
using Java开发环境之------MyEclipse快捷键和排除错误第一选择ctrl+1(***重点***:ctrl+1,快速修复---有点像vs中的快速using 2015-06-29 浏览 ...
- Windows下搭建Android NDK开发环境及命令行编译
首先说明本文内的相关安装操作参考<Pro Android C++ with the NDK>一书. 安装 Windows搭建Android NDK开发环境需要安装如下部分(同时需要配置对应 ...
- vue的开发环境搭建命令加图解
vue的开发环境的搭建 不管什么软件我们都要去官网下载安装,这是作为专业程序员的安全意识. 1.安装node.js 官方下载的页面:点击这里 大约展示的页面是这样子的!我们演示是windows 64位 ...
随机推荐
- java 操作zookeeper
java 操作zookeeper(一) 首先要使用java操作zookeeper,zookeeper的javaclient 使我们更轻松的去对zookeeper进行各种操作,我们引入zookeeper ...
- PAT L2-016 愿天下有情人都是失散多年的兄妹(深搜)
呵呵.大家都知道五服以内不得通婚,即两个人最近的共同祖先如果在五代以内(即本人.父母.祖父母.曾祖父母.高祖父母)则不可通婚.本题就请你帮助一对有情人判断一下,他们究竟是否可以成婚? 输入格式: 输入 ...
- mybatis插入数据并获取主键值
有时候我们的主键是自增的,但是我们想要在插入一条数据以后获取这条数据的主键值,而我们知道,mybatis执行完插入操作以后返回的是生效的记录数.那如何才能获取这个主键值呢. 1.在配置文件mapper ...
- Windows系统制作Ubuntu启动U盘(命令行)
背景 现今Ubuntu系统的使用越来越多,考虑到日常办公还是用Windows系统,但开发的需求常常要有Linux系统.因此将Linux系统安装到U盘不失为一种好的选择.在Windows系统上制作Ubu ...
- java NIO buffer --directBuffer (2)
HeapBuffer ----堆缓冲 :其实是在java 的内存模型中,java 虚拟机可以直接管控的 DirectBuffer ---直接缓冲 :使用的是native ,与操作系统挂钩,调用的 ...
- Django xadmin后台添加富文本编辑器UEditor的用法
效果图: 步骤: 1.利用命令:pip install DjangoUeditor,安装DjangoUeditor,但由于DjangoUeditor没有python3版本的,从的Github上把修改好 ...
- (九)ROS安装rviz模拟器
一 . 什么是 rviz rviz : The ROS Visualization Tool ,即机器人操作系统3D可视化工具.它的作用就是:一个虚拟世界,用来模拟机器人在现实世界的运行效果. 简单的 ...
- mySLQ数据库 练习题
MySQL 练习题1 DROP TABLE IF EXISTS `liuyan`; CREATE TABLE `liuyan` ( `id` int(11) NOT NULL AUTO_INCREME ...
- Jenkins构建.net项目
一.环境搭建 1.安装所需软件 Jenkins\JDK\GIT\VS\IIS\nginx(可选) 1.1 安装iis服务: 控制面板—>程序和功能—>启用或关闭windows功能,勾选所有 ...
- C# fckeditor浏览服务器和上传目录不一致,看不到上传过的文件
fckeditor在上传标签页面,传过文件后,在浏览服务器那里,看不到之前上传的文件,通过浏览服务器页面上传文件,保存的目录也和上传标签页面上传的不是同一个文件夹. 修改方法如下: 打开fckedit ...