[读书笔记] Python数据分析 (三) IPython
1. 什么是IPython
IPyhton 本身没有提供任何的计算或者数据分析功能,在交互式计算和软件开发者两个方面最大化地提高生产力,execute-explore instead of edit-compile-run.
2.TAB键的功能
Tab: 输出当前空间中任何与输入的字符串相匹配的变量

.<Tab>: 输出对象方法和属性,默认隐藏下划线开头的方法和属性和内部私有的方法和属性

.__<Tab>: 输出下划线开头的方法和属性和内部私有的方法和属性

路径搜索:


文件夹和文件名中间不能有空格
3. 对象内省(object introspection): ?
显示对象通用信息:

显示函数源码(??):

搜索IPython命名空间:

4. %run命令:
将文件当作Python程序运行,运行之后文件中定义的所有变量都可以在当前IPython shell中访问, 如果python脚本需要用到命令行参数,可以将参数放到文件路径后面,如果要脚本访问Ipython命名空间的变量,使用 %run i

result是在ipython_script_test.py中定义的变量
5. 中断正在执行的代码
Ctrl+c
6. 执行剪切板中的代码 %paste %cpaste
7. IPython跟编辑器和IDE之间的交互
8. 键盘快捷键

Ctrl+U删除当前光标到行首的文本,并非删除当前行所有文本
9. 异常和跟踪
10. 魔术命令:以%为前缀
%timeit: 检查任意Python语法执行时间

11. 基于Qt的富GUI控制台
12. Matplotlib集成和Pylab模式
pylab模式会集成matplotlib和numpy大部分功能,提供一个交互式的计算环境
13. 与操作系统交互

14. shell命令与别名:! %alias
以!开头的命令行表示其后所有内容在shel里面执行,还允许使用当前环境中定义的python值,只要在变量名前面加上美元符号$就可以

%alias命令可以为shell命令定义简称:

会话结束忘记一切别名,如果要创建永久性别名要使用配置系统
15. 目录书签系统
%bookmark(默认自动持久化)
16. 交互式调试器
IPython调和漆增强了pdb,如Tab键自动完成,语法高亮,为异常跟踪每条信息添加上下文参考
17. 代码执行时间
%time

%timeit:多次执行求平均值

18. 基本性能分析
%prun 和 run -p
19. Ipython NoteBook
一种交互式计算工具,也是科研和教学的理想媒介
20. 让类对pyhton更加友好
__repr__方法
21. 个性化和配置
- 修改颜色方案
- 修改输入输出提示符
- 去掉Out提示符跟下一个In提示符之间的空行
- 执行任意python语句,这些语句可以用于引入所有常见的东西,还可以做你希望每次地洞Ipython都发生的事情
- 启动Ipython扩展,如line_profiler中魔术命令
- 定义自己的魔术命令或者系统别名
ipython_config.py 文件中,
[读书笔记] Python数据分析 (三) IPython的更多相关文章
- [读书笔记] Python数据分析 (二) 引言
1. 数据分析的任务:数据读写,数据准备(清洗,修整,规范化,重塑,切片切块,变形),转换,建模计算,呈现(模型/数据) 2. 数据集: bit.ly的1.usa.gov数据:URL缩短服务bit ...
- [读书笔记] Python数据分析 (一) 准备工作
1. python中数据结构:矩阵,数组,数据框,通过关键列相互联系的多个表(SQL主键,外键),时间序列 2. python 解释型语言,程序员时间和CPU时间衡量,高频交易系统 3. 全局解释器锁 ...
- [读书笔记] Python数据分析 (四) 数组和矢量计算
Numpy:高性能计算和数学分析的基础包 ndarray, 一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组 用于对数组数据进行快速运算的标准数学函数 用于读写磁盘数据的工具和用于操作内存 ...
- [读书笔记] Python数据分析 (五) pandas入门
pandas: 基于Numpy构建的数据分析库 pandas数据结构:Series, DataFrame Series: 带有数据标签的类一维数组对象(也可看成字典) values, index 缺失 ...
- [读书笔记] Python 数据分析 (八)画图和数据可视化
ipython3 --pyplot pyplot: matplotlib 画图的交互使用环境
- [读书笔记] Python 数据分析 (十一)经济和金融数据应用
resample: 重采样函数,可以按照时间来提高或者降低采样频率,fill_method可以使用不同的填充方式. pandas.data_range 的freq参数枚举: Alias Descrip ...
- [读书笔记] Python 数据分析 (十二)高级NumPy
da array: 一个快速而灵活的同构多维大数据集容器,可以利用这种数组对整块的数据进行一些数学运算 数据指针,系统内存的一部分 数据类型 data type/dtype 指示数据大小的元组 str ...
- 《Java 8实战》读书笔记系列——第三部分:高效Java 8编程(四):使用新的日期时间API
https://www.lilu.org.cn/https://www.lilu.org.cn/ 第十二章:新的日期时间API 在Java 8之前,我们常用的日期时间API是java.util.Dat ...
- Python数据分析(一): ipython 技巧!
不一定非得使用Jupyter Notebook,试试ipython命令行 安装 ipython 我只试过Windows 10环境下的. 1.安装python安装包之后,应该就有ipython了. 2. ...
随机推荐
- strtotime的一个使用问题
我在开发过程中遇到这么这个问题,因为赶进度,没有记下来处理方案,在鸟哥的博客看到原理分析,很到位!平时开发中总是急着处理问题,没有深入分析和记录问题. 1.问题: 今天是2018-07-31 执行代码 ...
- Servlet 3.1 标准(一)
概述 什么是Servlet Servlet 是一个基于Java 的Web组件,由容器管理生成的动态内容.就像其他的Java组件一样,Servlet是平台无关的Java类所编译成的字节码,可以被动态加载 ...
- SSM整合(spring,spirngmvc,mybatis)
整合思路 准备环境:导入jar包(spring mybatis dbcp连接池 mysql驱动包 log4j) 工程结构: --------------------------- 1. 整合 ...
- eclipse svn -- - --- appears to be part of a subversion 1.7 or greater....解决方法
安装与svn1.7相兼容的flex Eclipse中的SVN(subclipse) 今天差点被TortoiseSVN1.7和subclipse弄崩溃... 还好最后弄好了,在此把方法写出来,以免其他人 ...
- codevs——T1044 拦截导弹 || 洛谷——P1020 导弹拦截
http://codevs.cn/problem/1044/ || https://www.luogu.org/problem/show?pid=1020#sub 时间限制: 1 s 空间限制: 1 ...
- c#远程链接服务器中MySQL
转自原文 c#远程链接服务器中MySQL 1.要连接MySQL数据库必须首先下载mysql官方的连接.net的文件,文件下载地址为http://dev.mysql.com/downloads/conn ...
- swift菜鸟入门视频教程-09-类和结构体
本人自己录制的swift菜鸟入门,欢迎大家拍砖,有什么问题能够在这里留言. 主要内容: 类和结构体对照 结构体和枚举是值类型 类是引用类型 类和结构体的选择 集合(collection)类型的赋值与复 ...
- hdu 3177 Crixalis's Equipment
Crixalis's Equipment Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
- 彻底禁用resource manager
禁用resource manager 由于发现系统的一个等待事件:resmgr:cpu quantum.这是由于resource manager的原因.看来resource manager 的bug还 ...
- 从零单排入门机器学习:线性回归(linear regression)实践篇
线性回归(linear regression)实践篇 之前一段时间在coursera看了Andrew ng的机器学习的课程,感觉还不错,算是入门了. 这次打算以该课程的作业为主线,对机器学习基本知识做 ...