码迷,mamicode.com
首页 > 编程语言 > 详细

Python简介

时间:2019-08-25 00:44:20      阅读:84      评论:0      收藏:0      [点我收藏+]

标签:量化交易   动态   com   大量   java实现   简单   速度   tps   ted   

前言:作为对于python小白而言,我们需要知道什么是python,为什么学习python而不是其他编程语言,它相比于其他语言有什么优势,同时了解python 的执行操作过程又是怎么样的,它有哪些分类?接下来开始走进python的世界。

一、Python的定义:

    什么是python呢?python是著名的‘龟叔Guido van Rossum在1989年圣诞节,为了打发无聊的圣诞节而开发的一门编程语言(脚本解释程序)。

    根据20017年12月的Tiobe排行榜--编程语言流行度,Python赶超C#、PHP名列第四。

    技术图片

  并且一直以来,Python整体呈上升的趋势,越来越多的人使用Python这门编程语言,逐渐更为广泛的得到行业的认可。

 


 

2、python的特点:

  那么Python如此迅速的发展,其本身有什么特点呢?

  先说说其优点吧:--->’优雅、明确、简单’。

    a、极佳的可读性。-->由于Python采用强制缩进的方式使得代码具有极佳的可读性。

    b、简单。-->非常适合学习,类似用一定的规则去写英语文章,并且使你可以专注的使用语言去解决问题而不是纠结于语言本身。

    c、开源。-->简单地说,你可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。

    d、可移植性。 -->由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就可以在下述任何平台上面运行。这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、QNX、VMS、、Windows CE等甚至还有PocketPC、Symbian以及Google基于linux开发的Android平台!

    e、既支持面向过程编程也支持面向对象编程。-->在面向过程的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在面向对象的语言中,程序是由数据和功能组合而成的对象构建起来的。而类似Java、c++等很难实现。

    f、丰富的库。-->python有可定义的第三方库可以使用。它可以帮助你处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。记住,只要安装了Python,所有这些功能都是可用的。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。

    g、可扩展性和可嵌入性。-->如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。你也可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。

 

  当然,Python也有其缺点:

    1、运行速度相对于其他语言而言较慢。--》由于其运行时要求边编译边执行的过程,故相对于C、Java、PHP等较慢。

    2、python的开源性使得Python语言不能加密。--》但是目前国内市场纯粹靠编写软件卖给客户的越来越少,网站和移动应用不需要给客户源代码,所以这个问题就是问题了。国随着时间的推移,很多国内软件公司,尤其是游戏公司,也开始规模使用他。

   那么相对于C、Java、PHP其他编程语言,Python的优劣在哪?

    C语言:首先我们要知道Python是有C语言实现的。

        C语言为编译型语言--》代码编译得到机器码,机器码在CPU上直接执行。故其运行速度快。

        Python为编译型还是解释型并不明确,姑且为解释型。---》代码编译得到字节码,再通过虚拟机执行字节码转换成机器码,最后由CPU执行。

    与Java、PHP、c#等相比:

      PHP类:适用于写网页,其局限性十分明显。

      Python和Java:既可以写网页,也可以写后台功能,这两者比较--》前者开发效率高、执行效率较低,或者开发效率较低,执行效率较高。

 


 

3、Python的种类:

  • Cpython
        Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上。
  • Jyhton
        Python的Java实现,Jython会将Python代码动态编译成Java字节码,然后在JVM上运行。
  • IronPython
        Python的C#实现,IronPython将Python代码编译成C#字节码,然后在CLR上运行。(与Jython类似)
  • PyPy(特殊)
        Python实现的Python,将Python的字节码字节码再编译成机器码。
  • RubyPython、Brython ..

 


 

4、Python的应用领域:

  • 系统编程

    Python语言在操作系统的内置接口,被称为Shell工具。Python程序可以搜索文件和目录树、可以运行其他的应有程序或是用进程或线程进行并行处理。Python标准库绑定了POSIX 以及其他常规操作系统工具。所以环境变量、管道、进程、多线程、文件、套接字、python正则表达式模式匹配、命令行参数、标准流接口、Shell 命令启动器、file扩展等。除此之外很多Python 的系统工具设计时都考虑了其可移植性。

  • 网络爬虫

    由于Python的网络方面的功能非常强大,常用来实现网络爬虫。常用框架有:

      grab – 网络爬虫框架(基于pycurl/multicur)。

      scrapy – 网络爬虫框架(基于twisted),不支持Python3。

      pyspider – 一个强大的爬虫系统。

      cola – 一个分布式爬虫框架。

      portia – 基于Scrapy的可视化爬虫。

      restkit – Python的HTTP资源工具包。它可以让你轻松地访问HTTP资源,并围绕它建立的对象。

      demiurge – 基于PyQuery的爬虫微框架。

  • 人工智能、科学计算

    科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas

  • WEB开发

    Python有众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣等等 典型WEB框架有Django、Flask等,享学课堂就是使用Django开发的。

  • 系统运维

    Python已经成为,运维人员必备语言,尤其是在Linux运维方面,基本上是自动化运维。

  • 大数据、云计算

    Python是大数据、云计算最火的语言, 典型应用OpenStack

  • 金融方面

    量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很厉害,生产效率远远高于c,c++,java,尤其擅长策略回测。

  • 图形界面方面

    PyQT, WxPython,TkInter

  • 企业和网站的案例方面    

    谷歌:Google App Engine 、code.google.com 、Google earth 、谷歌爬虫、Google广告等项目都在大量使用Python开发

    CIA: 美国中情局网站就是用Python开发的

    NASA: 美国航天局(NASA)大量使用Python进行数据分析和运算

    YouTube:世界上最大的视频网站YouTube就是用Python开发的

    Dropbox:美国最大的在线云存储网站,全部用Python实现,每天网站处理10亿个文件的上传和下载

    Instagram:美国最大的图片分享社交网站,每天超过3千万张照片被分享,全部用python开发

    Facebook:大量的基础库均通过Python实现的

    Redhat: 世界上最流行的Linux发行版本中的yum包管理工具就是用python开发的

    豆瓣: 公司几乎所有的业务均是通过Python开发的

    知乎: 国内最大的问答社区,通过Python开发(国外Quora)

    等等。

 


 

4、python的安装

  还有便是关于Python的安装方面的知识,

     Windows上python的安装--》可参考  https://jingyan.baidu.com/article/574c52197b9fbc6c8c9dc170.html##1

     Linux下python3.x的安装可跟根据以下流程进行安装:

技术图片
 1 #下载python3.x的安装包
 2 wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
 3 #准备工作
 4 yum install gcc-* glibc-* -y
 5 #切换至安装包所在目录,并且解包
 6 tar -xvf Python-3.6.5.tgz
 7 #切换至解包的目录下,运行configure脚本,添加编译参数
 8 ./configure --prefix=/usr/local/python3.6
 9 #编译
10 make
11 #安装
12 make install
技术图片

   添加环境变量:

#找到python3.x安装的位置,修改配置文件
vim /etc/profile
#将python3.x的安装目录添加至PATH后面
PATH =/usr/local/bin:/usr/bin/.......:/usr/local/python 3.6
export PATH

 

   而关于python2.安装---》Linux下默认安装是为python2.X可直接运行。

Python简介

标签:量化交易   动态   com   大量   java实现   简单   速度   tps   ted   

原文地址:https://www.cnblogs.com/maoxinjueluo/p/11406447.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!