我的“便(bian)宜”Python网课第一课

一、Python介绍

  python的创始人为吉多.范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多.范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。

  Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、Google、Yahoo、Faacebook、NASA、百度、腾讯

汽车之家、美团等。

  目前Python主要应用领域:

*云计算:云计算最火的语言,典型应用Open Stack

*WEB开发:众多优秀的web框架,典型的WEB框架有Django

*科学运算、人工智能:典型库Numpy、SciPy、Matplotlib、Enthought、library、pandas

*系统运维:运维人员必备语言

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

*图形GUI:PyQT、WxPython、TkInter。

  Python是一门怎样的语言?

解释和编译的区别是什么?

  编译器是把源码的每一条语句都编译成及其语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快。

  解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度时不如编译后的程序运行的快。

编译型VS解释型

  编译型

  优点:编译器一般会在预编译的过程中对代码进行优化。因为只编译一次,运行时不需要编译,所以编译型语言的程序执行效率高。可以脱离语言环境独立运行。

  缺点:编译后如果需要修改就需要整个模块重新编译。编译的时候根据对应的运行环境生成机器码,不同的操作系统之间移植就会有问题,需要根据运行的操作系统环境编译不同的可执行文件。

  解释型

  优点:有良好的平台兼容性,在任何环境中都可以运行,前提是安装了解释器(虚拟机)。灵活,修改代码的时候直接修改就可以,可以哭诉部署,不用停机维护。

  缺点:每次运行的时候都需要解释一遍,性能上不如编译型语言。

动态语言和静态语言

  通常我们说的动态语言,静态语言是指动态类型语言和静态类型语言。

  动态类型语言:动态类型语言是指在运行期间才去做数据类型检查的语言,也就是说,在用动态类型语言编程时,永远也不用还给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。Python和Ruby就是一种典型的动态类型语言,其他的各种脚本语言如VBScript也多少属于动态类型语言。

  静态类型语言:静态类型语言与动态类型语言刚好相反,它的数据类型是在编译期间检查的,也就是说再写程序时要声明所有变量的是数据类型,C/C++是静态类型语言的典型代表,其他的静态类型语言还有Csharp(C#)、Java等。

强类型定义语言和弱类型定义语言

  强类型定义语言:强制数据类型定义的语言,也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。举个例子:如果你定义了一个整形变量a,那么程序根本不可能将a当作字符串类型处理。强制类型语言是类型安全的语言。

  弱类型定义语言:数据类型可以被忽略的语言。它与强制类型定义语言相反,一个变量可以赋不同的类型的值。

  强类型定义语言再速度上可能略逊色于弱类型语言,但是强类型定义语言带来严谨性能够有效的避免许多的错误。另外,“这门语言是不是动态语言”与“这门语言是否类型安全”之间完全没有联系。例如:Python是动态语言,是强类型定义语言(类型安全语言);VBScript是动态语言,是弱类型定义语言(类型不安全的语言);Java是静态语言,是强类型定义语言(类型安全语言)。

  通过是上面介绍,我们可以看出,Python是一门动态解释型的强类型定义语言。

Python解释器

  当我们再编写Python代码时,我们得到的是一个包含Python的以.py为扩展名的文本文件。要运行代码,就需要Python解释器去执行.py文件。

  由于整个Python语言从规范到解释器都是开源的,所以理论上,只要水平够高,任何人都可以编写Python解释器来执行Python代码。

  CPython

  这个解释器是用C语言开发的。CPython是使用最广的Python解释器。

  PyPy

  PyPy是另外一个解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解不同。

 

转载于:https://www.cnblogs.com/JingyuWang/p/8542191.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
python学习课件+python源码90个合集: 002用Python设计第一个游戏(课件+源代码) 004改进我们的小游戏(课件+源代码) 005闲聊之Python的数据类型(课件+源代码) 007了不起的分支和循环(课件) 008了不起的分支和循环2(课件+源代码) 009了不起的分支和循环3(课件+源代码) 017函数:Python的乐高积木(课件+源代码) 019函数:我的地盘听我的(课件+源代码) 022函数:递归是神马(课件+源代码) 023递归:这帮小兔崽子(课件+源代码) 024递归:汉诺塔(课件+源代码) 028文件:因为懂你,所以永恒(课件+源代码) 029文件:一个任务(课件+源代码) 031永久存储:腌制一缸美味的泡菜(课件+源代码) 034丰富的else语句及简洁的with语句(课件+源代码) 034丰富的else语句及简洁的with语句(课件+源代码)(1) 036类和对象:给大家介绍对象(课件 源代码) 037类和对象:面向对象编程(课件 源代码) 038类和对象:继承(课件 源代码) 039类和对象:拾遗(课件 源代码) 045魔法方法:属性访问(课件 源代码) 046魔法方法:描述符(Property的原理)(课件 源代码) 047魔法方法:定制序列(课件 源代码) 048魔法方法:迭代器(课件 源代码) 049乱入:生成器(课件) 050模块:模块就是程序(课件 源代码) 051模块:__name__=_'__main___'、搜索路径和包(课件 源代码) 052模块:像个极客一样去思考(课件) 053论一只爬虫的自我修养(课件) 054论一只爬虫的自我修养2:实战(课件 源代码) 055论一只爬虫的自我修养3:隐藏(课件 源代码) 056论一只爬虫的自我修养4:OOXX(源代码) 062论一只爬虫的自我修养10:安装Scrapy(课件+软件包) 063论一只爬虫的自我修养11:Scrapy框架之初窥门径(课件 源代码) 064GUI的终极选择:Tkinter(课件 源代码) 065GUI的终极选择:Tkinter2(源代码) 066GUI的终极选择:Tkinter3(源代码) 067GUI的终极选择:Tkinter4(源代码) 068GUI的终极选择:Tkinter5(源代码) 069GUI的终极选择:Tkinter6(源代码) 070GUI的终极选择:Tkinter7(源代码) 071GUI的终极选择:Tkinter8(源代码) 072GUI的终极选择:Tkinter9(源代码) 073GUI的终极选择:Tkinter10(源代码) 074GUI的终极选择:Tkinter11(源代码) 075GUI的终极选择:Tkinter12(源代码) 076GUI的终极选择:Tkinter13(源代码) 077GUI的终极选择:Tkinter14(源代码) 078Pygame:初次见面,请大家多多关照(源代码) 080Pygame:事件(源代码) 081Pygame:提高游戏的颜值1(源代码) 082Pygame:提高游戏的颜值2(源代码) 083Pygame:提高游戏的颜值3(源代码) 084Pygame:基本图形绘制(源代码) 085Pygame:动画精灵(源代码) 086Pygame:碰撞检测(源代码) 087Pygame:播放声音和音效(课件 源代码) 088Pygame:摩擦摩擦(源代码) 089Pygame:游戏胜利(源代码) 090Pygame:飞机大战1(源代码) 091Pygame:飞机大战2(源代码) 093Pygame:飞机大战4(源代码) 094Pygame:飞机大战5(源代码) 095Pygame:飞机大战6(源代码) 096Pygame:飞机大战7(源代码) easygui-docs-0.96 Pyhon之常用操作符(课件) 下载必看.txt 元组:戴上了枷锁的列表(课件) 函数:内嵌函数和闭包(课件) 函数:灵活即强大(课件) 列表:一个打了激素的数组2(课件) 列表:一个打了激素的数组3(课件) 列表:一个打了激素的数组(课件) 字典:当索引不好用时(课件) 字符串:各种奇葩的内置方法(课件) 字符串:格式化(课件) 小插曲之变量和字符串(课件) 序列!序列!(课件) 异常处理:你不可能总是对的(课件) 愉快的开始(课件)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值