1-3 python介绍和安装
一.python介绍:
1.python的创始人为吉多·范罗苏姆(guido van rossum)。guido(龟叔)在1989年圣诞节期间开始写python语言的编译器,作为abc语言的一种继承。python名字来源于龟叔挚爱的电视剧monty python's flying circus,创造于c和shell之间。
2.tiobe排行榜:python排名第4
3.python应用领域:爬虫、数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等
·云计算:最火语言,典型应用openstack
·web开发:web框架均为python开发,例如youtubo,dropbox,豆瓣。典型的web框架有django
·科学运算、人工智能:典型库numpy,scipy,matplotlib,enthought,librarys,pandas
·系统运维:运维人员必备语言
·金融:量化交易、金融分析
·图形gui:pyqt,wxpython,tkinter
4.python(解释型语言)语言属性:
·编程语言分为:编译型和解释型 静态语言和动态语言 强类型定义语言和弱类型定义语言
·编译型语言-编译器:把源程序编译成机器语言,并保存二进制文件,计算机直接以机器语言运行程序,速度非常快。 优点:编译器一般会有预编译的过程对代码进行优化。因为编译只做1次,运行时不需要编译,所以编译型语言程序执行效率高,可以脱离语言环境独立运行。缺点:编译后如需修改需要整个模块重新编译,编译时根据对应的运行环境生成机器码,不同操作系统之间移植就会出现问题,需根据运行的操作系统环境编译不同的可执行文件。例如:c c++ go++ swift object-c pascal
·解释型语言-解释器:只在执行程序时,一条一条的解释成计算机语言给计算机执行,开发效率高,但是运行速度慢。 优点:有良好的平台兼容性,在任何环境中都可以运行,很灵活,可以直接修改代码,不用停机维护。 缺点:每次运行时都需要解释1次,性能上不如编译型语言。 例如:javascript python ruby php perl erlang
·混合型语言:java c#
·python优点:① 定位:优雅、明确、简单。易上手。 ②开发效率高,有强大的第三方库。 ③高级语言。 ④可移植性。python运行在解释器上,可以运行在所有系统。 ⑤可扩展性。可以部分程序使用c或c++编写,然后再python中使用。 ⑥可嵌入性。可以把python嵌入c或c++程序,向程序用户提供脚本功能。可以在python中写c或c++,同时也可以在c或c++中写python
·python缺点:①速度慢。解释型语言。②代码不能加密。源代码都是以名文的形式存在。③线程不能利用多cpu问题。 gil即全局解释器锁(global interpreter lock)是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行,python的线程是操作系统的原生线程。在linux上为pthread,在windows
上为win thread,完全由操作系统调度线程的执行。1个python解释器进程内有1条主线程,以及多条用户程序的执行线程。即使在多核cpu平台上,由于gil的存在,所以禁止多线程的并行执行。
5.python解释器分类:
python程序→解释器(解释成计算机语言01)→操作系统执行→计算机硬件(cpu>内存>外设)
python文件扩展名.py 运行代码需要解释器执行.py文件
①cpython:c语言开发。运行最广,widows命令行下运行python启动cpython解释器。
②ipython:基于cpython之上的交互式解释器,ipython只在交互方式上有所增强,其他和cpython一样。用于金融量化分析 。 cpython用>>>作为提示符,而ipython用in【序号】作为提示符。
③pypy:目标是执行速度,采用jit技术,对python代码进行动态编译(不是解释),可以显著提高python代码的执行速度。pypy和cpython有所不同。
④jython:运行在java平台上的python解释器,可以把python代码编译成java字节码执行。
⑤ironpython运行在.net平台上的python解释器,可以直接把python代码编译成.net字节码执行。
6. 2018.10.01年发布了python2.6 2018.12.03发布了python3.0 两个版本不兼容 。
上一篇: 洛谷 P1077 摆花
下一篇: PHP发送短信
推荐阅读
-
西瓜影音安装使用及西瓜影音播放器查找和下载视频的方法介绍
-
Python进阶(一)——安装Python、程序执行、Python模块和IDLE调试
-
python模块介绍- binascii:二进制和ASCII互转 以及其他进制转换
-
python库lxml在linux和WIN系统下的安装
-
python开发turtle安装和导入异常解决方案
-
Vue的介绍及安装和导入
-
Google开源的Python格式化工具YAPF的安装和使用教程
-
python安装numpy和pandas的方法步骤
-
Xamarin.Forms移动开发系列1:介绍和安装
-
如何安装多版本python python2和python3共存以及pip共存