Python 入门教程 - Python 介绍

Python 介绍

Python 是一种解释型、面向对象的语言,编译后生成字节码文件 (.py 后缀),运行在 PVM 虚拟机。Python 的创始人为吉多・范罗苏姆(Guido van Rossum),而 Python 是由 C 语言开发,但是不再有 C 语言中指针等复杂数据类型。

Python 的特点

  • 语法简洁
  • 可读性强
  • 面向对象
  • 免费和开源
  • 丰富的库 (丰富的标准库,多种多样的扩展库)
  • 可扩展性,方便嵌入到 C 和 C++ 语言,俗称胶水式语言
  • 可移植性和跨平台,Python 会被编译成与操作系统相关的二进制代码,然后再解释执行。这种方式和 Java 类似,大大提高了执行速度,也实现了跨平台

Python 的应用范围

  • 科学计算
  • 人工智能
  • WEB 服务端和大型网站后端(如 YouTube、Gmail、豆瓣)
  • 大数据
  • 云计算
  • 系统运维
  • GUI 开发
  • 游戏开发
  • 移动设备
  • 嵌入式设备

Python 的解释器、编译器

解析器的种类

CPython(Clang)、JPython(Java)、IronPython(.Net)、PyPy(Python)。

解释器、编译器介绍

计算机不能直接理解任何除机器语言以外的语言,所以必须要把程序员所写的程序语言翻译成机器语言,计算机才能执行程序。将其他语言翻译成机器语言的工具,被称为编译器,编译器翻译的方式有两种:一个是编译,另外一个是解释。两种方式之间的区别在于翻译时间点的不同。当编译器以解释方式运行的时候,也称之为解释器。

program-compile-explain

  • 编译型语言:程序在执行之前需要一个专门的编译过程,把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。程序执行效率高,依赖编译器,跨平台性差些。如 C、C++
  • 解释型语言:解释型语言编写的程序不进行预先编译,以文本方式存储程序代码,会将代码一句一句直接运行。在发布程序时,看起来省了道编译工序,但是在运行程序的时候,必须先解释再运行。
  • 编译型语言和解释型语言对比:速度 — 编译型语言比解释型语言执行速度快;跨平台性 — 解释型语言比编译型语言跨平台性好。

Python 的缺点

Python 是解释执行的语言,性能较低。因此,一些影响性能的功能可以使用 C/C++/JAVA/GO(GO 是 Google 的一门语言,写起来像 Python,性能像 C 语言)去开发,不过不用担心,Python 解释器会越来越快。

Python 的版本说明

Python 的版本兼容

  • 目前主要的两个版本
    • Python2.x: 2000 年 10 月发布,最新版本是 2.7,已经停止更新,2.7 被确定为最后一个 Python 2.x 版本,预计 2020 年退出历史舞台,解释器名称是 python
    • Python3.x: 2008 年发布,Python3 有了较大的提升,不兼容 Python2,解释器名称是 python3
  • 解决版本兼容问题
    • 官方提供了一个过渡版本 Python 2.6,基本使用了 Python 2.x 的语法和库,同时考虑了向 Python 3.0 的迁移,允许使用部分 Python 3.0 的语法与函数
    • Python3 的很多新特性也被移植到了 Python2.7,如果程序可以在 2.7 运行,可以通过一个名为 2to3(Python 自带的一个脚本)的转换工具无缝迁移到 Python3
    • 如果开发时,无法立即使用 Python 3.0(还有极少的第三方库不支持 3.0 的语法),建议先使用 Python 3.0 版本进行开发,然后使用 Python 2.6、Python 2.7 来运行,并且做一些兼容性的处理

Python 的多版本共存

  • 第一种方法:使用 pyenv 进行版本管理
  • 第二种方法:编译安装不同版本的 Python

Python 集成开发环境

IDLE 介绍

  • IDLE 是 Python 的官方标准开发环境,Windows 环境下 Python 安装完后默认就安装了 IDLE
  • IDLE 是用纯 Python 基于 Tkinter 编写,最初的作者正是 Python 之父 Guido Van Rossum
  • IDLE 已经具备了 Python 开发几乎所有功能 (语法智能提示、不同颜色显示不同类型等等),也不需要其他配置,非常适合初学者使用
  • IDLE 是 Python 标准发行版内置的一个简单小巧的 IDE,包括了交互式命令行、编辑器、调试器等基本组件,足以应付大多数简单应用

常用集成开发环境

  • IDLE
  • Pycharm
  • wingIDE
  • Eclipse
  • IPython