开发技术-IPython介绍

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

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

前言

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

正文

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

安装IPython

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

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

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

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

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

IPython基本功能

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

1.打开系统命令行

2.直接输入--->ipython

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

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

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

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

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

4.执行系统命令

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

5.! 执行系统命令

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

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

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

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

In [7]: a = [1, 2, 4]

In [8]: a.__*__?
a.__add__
a.__class__
a.__contains__
a.__delattr__
a.__delitem__
.....

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

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

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

In [9]: def func():
...: print('test ...')
...: In [10]: func?
Signature: func()
Docstring: <no docstring>
File: c:\users\<ipython-input-9-d44aec3a1078>
Type: function In [11]: func??
Signature: func()
Docstring: <no docstring>
Source:
def func():
print('test ...')
File: c:\users\<ipython-input-9-d44aec3a1078>
Type: function

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

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

IPython高级功能

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

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

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

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

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

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

2.使用命令历史

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

3.获取输入输出结果

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

# 单下划线
In [17]: 1 + 4
Out[17]: 5 In [18]: 666
Out[18]: 666 In [19]: _
Out[19]: 666 In [21]: _17
Out[21]: 5

4.目录标签系统%bookmark

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

IIn [22]: %bookmark home ~  # 设置标签

In [23]: %bookmark -l  # 查看标签列表
Current bookmarks:
home -> ~ In [24]: cd home # 使用标签
(bookmark:home) -> ~
C:\Users\Administrator In [25]: %bookmark -r # 删除标签 In [26]: %bookmark -l # 验证是否已经删除
Current bookmarks:

5.IPython Notebook

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

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

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

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. 关于微信小程序开发环境苹果IOS真机预览报SSL协议错误问题解决方案

                              微信小程序开发环境苹果IOS真机预览报SSL协议错误问题 原文来自:https://blog.csdn.net/qq_27626333/articl ...

  2. Docker容器服务(三)

    一.创建容器 容器是Docker的另一个核心概念. 简单地说,容器是镜像的一个运行实例,所不同的是,它带有额外的可写文件层. 1.1创建一个容器 使用docker create命令创建的容器处于停止状 ...

  3. 算法学习day01 栈和队列

    1,设计一个算法利用顺序栈的基本运算判断一个字符串是否是回文 解题思路:      由于回文是从前到后和从后到前读都是一样的,所以只要将待判断的字符串颠倒 然后与原字符串相比较,就可以决定是否是回文了 ...

  4. 201871010105-曹玉中《面向对象程序设计(java)》第十六周学习总结

    201871010105-曹玉中<面向对象程序设计(java)>第十六周学习总结 项目 内容 这个作业属于哪个过程 https://www.cnblogs.com/nwnu-daizh/ ...

  5. 201871010134-周英杰《面向对象程序设计(java)》第十六周学习总结

    项目 内容 <面向对象程序设计(java)> https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/ ...

  6. Leetcode148-Sort_List

    Sort_List 在LeetCode 里面,因为只有归并排序的时间复杂度为O(1),所以快速排序用不了,前面两个都没用直接看最后一个归并排序. 冒泡排序(超时了) public ListNode s ...

  7. C++17尝鲜

    https://cloud.tencent.com/developer/article/1351910 [译]C++17,optional, any, 和 variant 的更多细节 用户261520 ...

  8. 使用lombok的利弊

    使用lombok的好处是:1.减少大量的模板代码,get和set方法,从代码封装维度看,将大量的模板代码进行封装,不需要其他人员来不断编写,哪怕是IDE可以生成的代码,这也是重复代码,减少重复的出现; ...

  9. ISerializable接口

    继承ISerializable接口可以灵活控制序列化过程 格式化器的工作流程:格式化器再序列化一个对象的时候,发现对象继承了ISerializable接口,那它就会忽略掉类型所有的序列化特性,转而调用 ...

  10. 数据结构——链队列(linked queue)

    /* linkedQueue.c */ /* 链队列 */ #include <stdio.h> #include <stdlib.h> #include <stdboo ...