01.入门必备认识python-->Linux中python环境搭建-->Linux交互模式ipython
Posted 小鹏linux
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了01.入门必备认识python-->Linux中python环境搭建-->Linux交互模式ipython相关的知识,希望对你有一定的参考价值。
📋 个人简介
💖 作者简介:大家好,我是小鹏linux,运维领域新星创作者。😜
📝 个人主页:小鹏linux🔥
🎉 支持我:点赞👍+收藏⭐️+留言📝
💬格言:你未必出类拔萃,但一定与众不同!🔥
📕 系列专栏:
🍎 阶段一:windows基础 目前原创16篇
🍎 阶段二:Linux基础知识 目前原创38篇
🍎 阶段三:shell基础+shell高级 目前原创23篇
🍎 阶段四:python基础及自动化应用 目前原创1篇
🍎 阶段五:Linux网络服务 原创未开始
🍎 阶段六:集群原理及架构 原创未开始
🍎 阶段七:云计算虚拟化技术 原创未开始
目录
1.认识python
python之父——吉多·范罗苏姆
1989年,为了打发无聊的圣诞节假期,Guido开始用C语言写Python语言的编译器Python的意思是蟒蛇,源于作者喜欢的一部电视剧
1991年,第一个Python编译器诞生。它是用C语言实现的,并能够调用C语言的库文件从一出生,Python已经具有了 :类,函数,异常处理,包含表和词典在内的核心数据类型,以及模块为基础的拓展系统。Python语法很多来自C,但又受到ABC语言的强烈影响
Python的解释器如今有多个语言实现,我们常用的是CPython(官方版本的C语言实现),其他还有Jython(可以运行在Java平台)
Python目前有两个版本,Python2.x和Python3.x,最新版分别为2.7.14和3.6.3
2.应用场景
2.1Web应用开发
Python经常被用于Web开发。比如,通过mod_wsgi模块,Apache可以运行用Python编写的Web程序。Python 定义了WSGI (是Python 应用程序或框架和Web服 服务器之间的一种接口)标准应用接口来协调Http 服务器与基于Python 的Web 程序之间的通信
2.2自动化运维
在很多操作系统里,Python是标准的系统组件。 大多数Linux发行版以及ubuntu、CentOS、NetBSD、OpenBSD和Mac OS X都集成了Python,可以在终端下直接运行Python。有一些Linux发行版的安装器使用Python语言编写,比如Ubuntu的Ubiquity安装器,Red HatLinux的Anaconda安装器。Python标准库包含了多个调用操作系统功能的库。通过pywin32这个第三方软件包,Python能够访问Windows的COM服务及其它Windows API。Python编写的系统管理脚本在可读性、性能、代码重用度、扩展性几方面都优于普通的shell脚本。
2.3科学计算
NumPy,SciPy,Matplotlib可以让Python程序员编写科学计算程序。
2.4桌面软件
PyQt、PySide、wxPython、PyGTK是Python快速开发桌面应用程序的利器
2.5服务器软件
Python对于各种网络协议的支持很完善,因此经常被用于编写 服务器软件、网络爬虫。第三方库Twisted[ˈtwɪstɪd] 支持异步网络编程和多数标准的网络协议(包含客户端和服务器),并且提供了多种工具,被广泛用于编写高性能的服务器软件。
2.6游戏
很多游戏使用C++编写图形显示等高性能模块,而使用Python或者Lua编写游戏的逻辑、服务器。相较于Python,Lua的功能更简单、体积更小;而Python则支持更多的特性和数据类型
2.7产品早期原型和迭代
饿了么、小米、瓜子、Ucloud、360、腾讯、阿里巴巴、陌陌、美团和知乎 , YouTube、Google、Yahoo!、NASA都在内部大量地使用Python。
2.8人工智能
pyDatalog:Python中的逻辑编程引擎
SimpleAI:Python实现在“人工智能:一种现代的方法”这本书中描述过的人工智能的算法。它专注于提供一个易于使用,有良好文档和测试的库。
EasyAI:一个双人AI游戏的python引擎(负极大值,置换表、游戏解决)
2.9数据分析
1、python下的数据分析模块
pandas: :主要用于数据分析,数据 预处理以及基本的作图,这个包不涉及复杂的模型。
2、python的数据可视化
最常用的matplotlib,用于科学制图——基础的绘图,已经集成在pandas里。
3、Python的爬虫
Scrapy :Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。。用这个框架可以轻松爬下来如亚马逊商品信息之类的数据。
3.Linux中python环境搭建
3.1python2
在大多数Linux系统上都已经有集成好了Python开发环境,不需要安装就可以执行Python代码了
验证Python2环境是否搭建好Ctrl + Alt + t 打开终端输入命令:python
退出Python2环境命令:exit()或者Ctrl+d
3.2python3
验证Python3环境是否搭建好Ctrl + Alt + t 打开终端输入命令:python
3.3python3安装过程
前期准备工作:安装依赖:
[root@localhost ~]# yum install -y openssl-devel openssl-static zlib-devel lzma tk-devel xz-devel bzip2-devel ncurses-devel gdbm-devel readline-devel sqlite-devel gcc libffi-devel
上传压缩包并解压安装:
[root@localhost ~]# rz #上传Python-3.7.6.tgz压缩包
[root@localhost ~]# mkdir /opt/app/
[root@localhost ~]# tar -zxf Python-3.7.6.tgz -C /opt/app/ #解压缩到指定位置
[root@localhost ~]# ./configure #执行configure文件
[root@localhost ~]# make && make install #编译安装
[root@localhost ~]# ln -s /opt/app/Python-3.7.6/python /usr/bin/python3 #设置软连接
4.python程序
4.1Python执行过程解析
一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。当你运行你的程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码运行程序。在计算机内部,Python 解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。事实上,由于你不再需要担心如何编译程序,如何确保连接转载正确的库等等,所有这一切使得使用Python更加简单。 由于你只需要把你的Python 程序拷贝到另外一台计算机上,它就可以工作了,这也使得你的Python 程序更加易于移植
4.2Python解释器。
当我们编写Python代码时,我们得到的是一个包含Python代码的以.py为扩展名的文本文件。要运行代码,就需要Python解释器去执行.py文件。由于整个Python语言从规范到解释器都是开源的,所以理论上,只要水平够高,任何人都可以编写Python解释器来执行Python代码(当然难度很大)。事实上,确实存在多种
CPython:当我们从Python官方网站下载并安装好Python 3.5后,我们就直接获得了一个官方版本的解释器: CPython 。这个解释器是用C 语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。CPython是使用最广的Python解释器。
IPython:IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。
PyPy:PyPy是另一个Python解释器, 它的目标是执行速度。PyPy采 用JIT 技术,对Python代码 进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点。
Jython:Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。
IronPython:IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。
小结:Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。
4.3使用交互模式写Python程序
第一种通过终端输入python或python3进入终端交互模式
第二种通过编辑器,如vim编写Python程序
4.4在文件的头部配置Python解释器
在代码第一行写入执行时的Python解释器路径,编辑完后需要对此Python文件添加'x'权限
编辑完成后正常情况下,我们会给.py文件添加可执行权限:
5.Linux交互模式IPython
5.1Ipython简介
IPython 是一个 python 的交互式 shell,比默认的python shell 好用得多,支持变量自动补全,自动缩进,支持bash shell 命令,内置了许多很有用的功能和函数。
IPython:IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。
5.2开启Python3交互模式(必须联网)
更新pip版本命令:pip3 install --upgrade pip
安装命令:pip3 install ipython (需要切换到root用户进行安装)
总结:ipython3的好处是可以命令自动补全,还可以执行Linux部分命令,以后测试一些小案例用交互模式要多一些。
以上是关于01.入门必备认识python-->Linux中python环境搭建-->Linux交互模式ipython的主要内容,如果未能解决你的问题,请参考以下文章
Python语法必备篇——Python中的 列表 顶级入门教程 全面讲解
Python语法必备篇——Python中的 列表 顶级入门教程 全面讲解
新手入门Python编程必备的六款开发工具,你值得拥有!!!(分享下载网站)
☀️ 学会编程入门必备 C# 最基础知识介绍——带你认识 C# 中的几种循环结构( for & while & do...while)