开发技术-IPython介绍

IPython是交互式的Python命令行,希望大家喜欢。

最近在回顾之前学习的内容,并且继续学习新的知识。这种自身的感觉,很不一般,有太多的感想产生。希望自己可以坚持将所有的内容进行回顾,并且进行总结,整理成册。

前言

  1. 目前所有的文章思想格式都是:知识+情感。
  2. 知识:对于所有的知识点的描述。力求不含任何的自我感情色彩。
  3. 情感:用我自己的方式,解读知识点。力求通俗易懂,完美透析知识。

正文

IPython 的学习,让我自己在一次感受到了Python这个套餐体系的强大!是真的强大!!!接着来我将会对于IPython进行自我的陈述,希望大家会喜欢。

安装IPython

学习任何工具类的技术都是从安装开始的,所以说,不会了也硬着头皮整,总会成功的。

安装前戏:自己电脑需要安装了Python,那个Python叫做CPython,不知道的可以自己进行科普一下。(安装Python的教程很多,自行百度安装)

正式安装:命令行输入: pip3 install ipython

等待一下即可,如果自己配置过使用国内的源,就会安装的快一点,如果自己都不知道源是什么,那么可以自行科普下如果设置pip的国内豆瓣源,阿里源......()

注意:如果自己之前装过Python2与Python3的双版本,请注意在安装IPython的时候,确定是安装到了Python3下,别搞错了!!!

IPython基本功能

IPython的常用功能:Tab自动补全,执行系统命令 ,! 执行系统命令 ,命令空间搜索:a.__ * __? , 内省,交互式中常用的快捷键。

1.打开系统命令行

2.直接输入--->ipython

(看到下面的交互式命令行出现)

  1. C:\Users\Administrator>ipython
  2. Python 3.7.1 (v3.7.1:260ec2c36a, Oct 20 2018, 14:57:15) [MSC v.1915 64 bit (AMD64)]
  3. Type 'copyright', 'credits' or 'license' for more information
  4. IPython 7.6.1 -- An enhanced Interactive Python. Type '?' for help.
  5. In [1]:

3.输入命令自动补全功能

(输入list.appe ----> 按下回车,会显示出下面的信息)

  1. In [1]: list.append
  2. append() count insert remove
  3. clear extend mro reverse
  4. copy index pop sort
  5. function(self, object: _T)

4.执行系统命令

  1. In [2]: pwd
  2. Out[2]: 'C:\\Users\\Administrator'
  3. In [3]: cd ..
  4. C:\Users

5.! 执行系统命令

在执行一般系统命令的时候,会报错,此时就可以加叹号执行系统命令。

  1. In [4]: ipconfig
  2. ---------------------------------------------------------------------------
  3. NameError Traceback (most recent call last)
  4. <ipython-input-4-54677b582e7c> in <module>
  5. ----> 1 ipconfig
  6. NameError: name 'ipconfig' is not defined
  7. In [5]: !ipconfig
  8. Windows IP 配置

6.命令空间搜索:a.__ * __?

在忘记函数名字的时候,可以进行问号 ? 查询

  1. In [7]: a = [1, 2, 4]
  2. In [8]: a.__*__?
  3. a.__add__
  4. a.__class__
  5. a.__contains__
  6. a.__delattr__
  7. a.__delitem__
  8. .....

7.内省:进行python原函数的方法与函数体的显示,查看在python内的具体信息是什么。

注意: python的自省是指的什么?

python的自省是指在程序执行的过程中,能够知道对象的类型

  1. In [9]: def func():
  2. ...: print('test ...')
  3. ...:
  4. In [10]: func?
  5. Signature: func()
  6. Docstring: <no docstring>
  7. File: c:\users\<ipython-input-9-d44aec3a1078>
  8. Type: function
  9. In [11]: func??
  10. Signature: func()
  11. Docstring: <no docstring>
  12. Source:
  13. def func():
  14. print('test ...')
  15. File: c:\users\<ipython-input-9-d44aec3a1078>
  16. Type: function

8.交互式中常用的快捷键

注意:这里让我想起来了vim的快捷键,注意区分。(快捷键熟能生巧,不要死记!)

IPython高级功能

IPython高级功能: 魔术命令 , 使用命令历史 ,获取输入输出结果 , 目录标签系统%bookmark,IPython Notebook 。,

1.魔术命令 :以%开始的命令

%run:执行文件代码(直接书写文件,加上文件的绝对路径就可以进行运行了。)

%paste:执行剪贴板代码(只需要将想执行的代码复制在剪切版,就可以直接执行)

%timeit:评估运行时间(不用在使用装饰器,直接可以进行微小时间运算的输出)

%pdb:自动调试(使用的时候,需要自己进行pdb的开关,开启:%pdb on; 关闭:%pdb off)

2.使用命令历史

直接使用键盘的上下键就可以和linux一样获得上一次执行的代码。

3.获取输入输出结果

使用下划线,加上对应的in/out的数字。也可以使用多个下划线,当前位置开始向上取输出值。

  1. # 单下划线
  2. In [17]: 1 + 4
  3. Out[17]: 5
  4. In [18]: 666
  5. Out[18]: 666
  6. In [19]: _
  7. Out[19]: 666
  8. In [21]: _17
  9. Out[21]: 5

4.目录标签系统%bookmark

自定义一个标签,定义自己想存放的内容,需要使用的时候直接调用对应的标签即可。回忆一下常量数值的命名思想。

  1. IIn [22]: %bookmark home ~ # 设置标签
  2. In [23]: %bookmark -l # 查看标签列表
  3. Current bookmarks:
  4. home -> ~
  5. In [24]: cd home # 使用标签
  6. (bookmark:home) -> ~
  7. C:\Users\Administrator
  8. In [25]: %bookmark -r # 删除标签
  9. In [26]: %bookmark -l # 验证是否已经删除
  10. Current bookmarks:

5.IPython Notebook

1)使用这个工能需要自己安装jupyter,安装方法: pip3 install jupyter

注意:可以直接在ipython中进行安装,毕竟需要活学活用哈! ----> !pip3 install jupyter

2)使用jupyter,这个时候必须退出ipython的交互模式。

  1. C:\Users\Administrator>jupyter notebook`

3.此时会在电脑系统默认浏览器中打开新的页面,直接可以进行使用了。具体怎么时候,自行百度即可~~So easy.

结束语

好了,以上就是自己对于IPython介绍的summary,希望大家喜欢~~

欢迎大家关注我,会有很多关于知识的硬货。希望大家学习愉快!

开发技术-IPython介绍的更多相关文章

  1. WPF开发技术介绍

    本月做了一个小讲座,主要是WPF的开发技术介绍,由于是上班时间,去听的人不多,但对于自己来说至少是又巩固了Winform的知识,抽时间写一篇文章,在此分享给大家,有什么宝贵建议大家也可以提给我,谢谢. ...

  2. 3星|《给产品经理讲技术》:APP开发技术介绍,没有技术背景的话恐怕只能看懂书中的比喻和结论

    基本是APP开发涉及到的相关技术的入门级介绍.涉及到的知识点与技术细节比较多,不少技术相关的内容并没有像标题暗示的那样没有技术背景也可以看懂,而是涉及到许多专业的术语.原理.也有一些内容是用比喻的方法 ...

  3. Qt开发技术:QCharts(三)QCharts样条曲线图介绍、Demo以及代码详解

    若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...

  4. 《python开发技术详解》|百度网盘免费下载|Python开发入门篇

    <python开发技术详解>|百度网盘免费下载|Python开发入门篇 提取码:2sby  内容简介 Python是目前最流行的动态脚本语言之一.本书共27章,由浅入深.全面系统地介绍了利 ...

  5. .NET Web开发技术简单整理

    在最初学习一些编程语言.一些编程技术的时候,做的更多的是如何使用该技术,如何更好的使用该技术解决问题,而没有去关注它的相关性.关注它的理论支持,这种学习技术的方式是短平快.其实工作中有时候也是这样,公 ...

  6. Web开发技术发展历史

    Web开发技术发展历史   来自:天码营 原文:http://www.tianmaying.com/tutorial/web-history Web的诞生 提到Web,不得不提一个词就是"互 ...

  7. Windows Phone 8.1 开发技术概览 (Universal APP)

    前一阵真的比较懒 WP8.1 已经出来这么长时间了现在才更新BLOG让大家久等了,今天我先为大家介绍下 WP 8.1的开发框架,什么是微软所推崇的 Universal APP,以及我们要开发 Univ ...

  8. Autodesk 最新开发技术研讨会 -8月22日-Autodesk北京办公室

    为了增进与广大中国地区Autodesk产品的二次开发人员的了解与互动,帮助中国地区的Autodesk产品二次开发人员了解Autodesk最新的二次开发技术动向,并获得Autodesk公司专业开发支持顾 ...

  9. JAVA智能设备基于OpenGL的3D开发技术 之AABB碰撞检测算法论述

    摘要:无论是PC机的3D还是智能设备应用上,碰撞检测始终是程序开发的难点,甚至可以用碰撞检测作为衡量3D引擎是否完善的标准.现有许多3D碰撞检测算法,其中AABB碰撞检测是一种卓有成效而又经典的检测算 ...

随机推荐

  1. 网关地址和网关IP是什么,他们有什么关系?

    2019-12-19  新用户541...  转自 小糊涂大神 修改   通常情况下,一台终端上网必须设置IP地址.子网掩码.网关IP地址,终端IP地址与网关IP属于同一个网段,网关IP是终端访问外网 ...

  2. 201871010104-陈园园 《面向对象程序设计(java)》第十五周学习总结

    201871010104-陈园园 <面向对象程序设计(java)>第十五周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...

  3. 201871010110-李华《面向对象程序设计(java)》第八周学习总结

    项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p ...

  4. 2019 AI 100 Startups

  5. zzL1和L2正则化regularization

    最优化方法:L1和L2正则化regularization http://blog.csdn.net/pipisorry/article/details/52108040 机器学习和深度学习常用的规则化 ...

  6. web框架--XSS攻击和CSRF请求伪造

    XSS 跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS.恶意攻击者往Web ...

  7. 【oracle】oracle11g安装失败 提示找不到文件,模板General_Purpose.dbc不存在

    先确定一下自己的安装包是不是一起解压的! 不是就重新解压,重新装. 是,剩下的我也不会

  8. 【day04】css

    一.CSS2.0[Cascading Style Sheets]层叠样式表  1.什么是CSS:修饰网页元素(标记)外观(比如给文字加颜色,大小,字体)的,W3C规定尽量用CSS样式替代XHTML属性 ...

  9. Educational Codeforces Round 59 (Rated for Div. 2) E 区间dp + 状态定义 + dp预处理(分步dp)

    https://codeforces.com/contest/1107/problem/E 题意 给出01字符串s(n<=100),相邻且相同的字符可以同时消去,一次性消去i个字符的分数是\(a ...

  10. [LeetCode] 55. Jump Game 跳跃游戏

    Given an array of non-negative integers, you are initially positioned at the first index of the arra ...