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

Python简介

时间:2019-04-22 22:53:06      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:标准库   就是   维护   操作   第三方模块   第三方   代码编辑   程序执行效率   拓展   

Python简介

编程语言分类

编译型语言和解释型语言

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

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

这是因为计算机不能直接认识并执行我们写的语句,它只能认识机器语言(是二进制的形式)。

编译型

优点:编译器一般会有预编译的过程对代码进行优化。因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高。可以脱离语言环境独立运行。
缺点:编译之后如果需要修改就需要整个模块重新编译。编译的时候根据对应的运行环境生成机器码,不同的操作系统之间移植就会有问题,需要根据运行的操作系统环境编译不同的可执行文件。

解释型

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

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

总的来说:
编译型语言,统一编译,一次执行;解释型语言,翻译一行,执行一行;
编译型语言运行速度比解释型快,但解释型语言跨平台性比编译型语言更好;

动态语言和静态语言

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

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

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

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

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

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

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

由此可见,python是一门动态解释性的强类型定义语言。

python的介绍

Python的诞生

python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。
作为Python的创始人,龟叔至今仍然掌握着Python发展的核心方向,被称为仁慈的独裁者。
python取自BBC电视剧-派森的飞行马戏团。

python的设计目标

  • 一门简单直观的语言并与主要竞争者一样强大
  • 开源,任何人都能为它做贡献
  • 代码像纯英语那样容易理解
  • 适用于短期开发的日常任务

python的设计哲学

  1. 优雅
  2. 明确
  3. 简单

Python开发者的哲学是:用一种方法,最好是只有一种方法来做一件事
如果有多种选择,Python开发者一般会拒绝花哨的语法,而选择明确没有或很少有歧义的语法

python的特点

  • Python是完全面向对象的语言;
  • Python拥有一个强大的标准库;
  • Python社区提供了丰富的第三方模块;

python的优缺点

优点:

  1. 简单,易学
  2. 免费,开源
  3. 面向对象
  4. 丰富的库
  5. 可扩展性,如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。
  6. 开发效率高
  7. 可嵌入性,你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。

缺点:

  1. 运行速度慢
  2. 中文资料匮乏
  3. 代码不能加密
  4. 线程不能利用多CPU问题

Python程序介绍

Python源程序

Python源程序就是一个特殊格式的文本文件,可以使用任意文本编辑软件做Python开发;
Python程序的文件拓展名是.py。

Python程序的三种运行方式

1.Python解释器
当我们写好一个Python程序并将其保存为xxx.py文件后,可以使用如下命令在终端执行:
python xxx.py:用python2的解释器执行
python3 xxx.py:用python3的解释器执行

2.交互式运行python程序
在终端输入python/python3,输入python代码即可;
应注意,交互式适合于学习/验证python语法或者局部代码,但不能保存,且不适合于过长的代码。
退出交互式:exit() 或者Ctrl+d。

ipython的使用:
在终端输入ipython/ipython3,输入代码执行。
ipython是python的交互式shell,比默认的python shell好用,支持一下功能:

  • 支持自动补全
  • 支持自动缩进
  • 支持bash shell 命令
  • 内置很多有用的功能和函数
    退出ipython:exit 或者ctrl+d。

3.集成开发环境-IDE
集成开发环境,集成了开发软件需要的所有工具,一般包括以下工具:

  • 图形用户界面
  • 代码编辑器(支持代码补全,自动缩进)
  • 编译器/解释器
  • 调试器(断点,单步执行)等等
    Python常见的IDE是pycharm。

Python错误演示

bug产生原因一般有:

  • 手误
  • 对已学知识理解不足
  • 对python学习还不够
  • 等等

常见bug:

  • 拼写错误:关键词写错,比如将print写成pirnt,出现NameError
  • 语法错误:将本应多行的print语句写在同一行,出现语法错误,syntaxerroe;
  • 缩进错误:出现缩进错误,indentationerror;
  • 版本不对:比如python2默认不支持中文,但写了,出现语法错误syntaxerroe,可以将解释器改为用python3执行
  • 等等

python2.x和python3.x介绍

python2.x和python3.x简介

  • python2和python3之间有一个较大的升级;
  • python3没有考虑向下兼容,但Python2的大部分代码都能够在python3中运行,不行则修改部分代码即可。
  • python3.0发布于1008年;
  • python2到pyton3之间的过度版本为python2.6;
  • 2010年推出的python2.7被确定为为python2.x的最后一个版本;

python2.x和python3.x的区别

宏观上:

  • py2源码不标准,混乱,重复代码太多;py3统一标准,去除重复代码;

微观上:

  1. py2的默认编码方式是ascii码,py3的是utf-8;
  2. print语句的变化,2中是print "hello world",3中是print函数,即print("hello world");
  3. python2默认不支持中文,python3支持;
  4. 其他待更新

Python简介

标签:标准库   就是   维护   操作   第三方模块   第三方   代码编辑   程序执行效率   拓展   

原文地址:https://www.cnblogs.com/yifchan/p/python-1-1.html

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