Python 是一种解释型、面向对象(完全支持继承、重载、多重继承)、动态数据类型的高级程序设计语言 Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言 Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构 金典话语: 人生苦短,我用Python Life is short,you need Python

简介 详细描述
Python 是一种解释型语言 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言
Python 是交互式语言 这意味着,您可以在一个 Python 提示符 >>> 后直接执行代码
Python 是面向对象语言 这意味着Python支持面向对象的风格或代码封装在对象的编程技术
Python 是一种解释型语言 Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到 WWW 浏览器再到游戏

Python 发展历史

  • Python 在八十年代末和九十年代初,在荷兰国家数学和计算机科学研究所设计出来的。
  • 由吉多-范罗苏母(Guido van Rossum) 于 1989 年底发明,第一个公开发行版发行于 1991 年
  • Python 本身也是由诸多其他语言发展而来的,这包括 ABC、Modula-3、C、C++、Algol-68、SmallTalk、Unix shell 和其他的脚本语言等等
  • 像 Perl 语言一样,Python 源代码同样遵循 GPL(GNU General Public License)协议
  • 现在 Python 是由一个核心开发团队在维护,Guido van Rossum 仍然占据着至关重要的作用,指导其进展
  • Python 2.0 于 2000 年 10 月 16 日发布,增加了实现完整的垃圾回收,并且支持 Unicode
  • Python 3.0 于 2008 年 12 月 3 日发布,此版不完全兼容之前的 Python 源代码。不过,很多新特性后来也被移植到旧的Python 2.6/2.7版本
  • Python 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级
  • 官方宣布,2020 年 1 月 1 日, 停止 Python 2 的更新。Python 2.7 被确定为最后一个 Python 2.x 版本,它除了支持 Python 2.x 语法外,还支持部分 Python 3.1 语法

Python 特点

  1. 易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,代码像纯英语那样容易理解,学习起来更加简单
  2. 易于阅读:Python代码定义的更清晰
  3. 高效开发:适用于短期开发的日常任务。同一样问题,用不同的语言解决,代码量差距还是很多的,一般情况下 Python 是 Java 的 1/5,所以说 人生苦短,我用 Python
  4. 易于维护:Python的成功在于它的源代码是相当容易维护的
  5. 开源: 以便任何人都可以为它做贡献
  6. 一个广泛的标准库:Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容。Python 语言的核心只包含 数字、字符串、列表、字典、文件 等常见类型和函数,而由 Python 标准库提供了 系统管理、网络通信、文本处理、数据库接口、图形系统、XML 处理 等额外的功能
  7. 大量的第三方模块: 它们的功能覆盖 科学计算、人工智能、机器学习、Web 开发、数据库接口、图形系统 多个领域
  8. 互动模式:互动模式的支持,您可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片断
  9. 可移植:基于其开放源代码的特性,Python已经被移植(也就是使其工作)到许多平台
  10. 可扩展:如果你需要一段运行很快的关键代码,或者是想要编写一些不愿开放的算法,你可以使用C或C++完成那部分程序,然后从你的Python程序中调用
  11. 数据库:Python提供所有主要的商业数据库的接口
  12. GUI编程:Python支持GUI可以创建和移植到许多系统调用
  13. 可嵌入: 你可以将Python嵌入到C/C++程序,让你的程序的用户获得”脚本化”的能力

Python 的优缺点

优点 缺点
简单、易学
免费、开源
面向对象
丰富的库
可扩展性(如果需要一段关键代码运行得更快或者希望某些算法不公开,可以把这部分程序用 C 或 C++ 编写,然后在 Python 程序中使用它们)
……
运行速度
国内市场较小
中文资料匮乏

执行Python程序

以下代码为使用 python xxx.py 输出 “Hello World!”

  1. #!/usr/bin/python
  2. print("Hello, World!")

运行实例 »

Python 3.0+ 版本已经把 print 作为一个内置函数,python3 xxx.py输出 “Hello World!” 代码如下:

  1. #!/usr/bin/python3
  2. print("Hello, World!")

运行实例 »

Python 的解释器

语言的解释器 描述 地址
CPython 官方版本的 C 语言实现
IPython 是在 CPython 的基础之上在交互式方面得到增强的解释器 http://ipython.org/
Jython 可以运行在 Java 平台 http://www.jython.org/
IronPython 可以运行在 .NET 和 Mono 平台
PyPy Python 实现的,支持 JIT 即时编译

Python查看版本交互编程模式

  1. #查看使用的Python版本〖我们可以在命令窗口(Windows 使用 win+R 调出 cmd 运行框)使用以下命令〗
  2. python -V
  3. #进入Python的交互式编程模式,查看版本
  4. Ken-MacBook:~ kim$ python
  5. Python 3.7.6 (default, Dec 30 2019, 19:38:28)
  6. [Clang 11.0.0 (clang-1100.0.33.16)] on darwin
  7. Type "help", "copyright", "credits" or "license" for more information.
  8. >>>
  9. python 提示符中输入以下语句,然后按回车键查看运行效果
  10. >>> print ("Hello, Python!");
  11. Hello, Python!
  12. >>> if flag:
  13. ... print("flag 条件为 True!")
  14. ...
  15. flag 条件为 True!

以下为Python命令行参数:

选项 描述
-d 在解析时显示调试信息
-O 生成优化代码 ( .pyo 文件 )
-S 启动时不引入查找Python路径的位置
-V 输出Python版本号
-X 从 1.6版本之后基于内建的异常(仅仅用于字符串)已过时。
-c cmd 执行 Python 脚本,并将运行结果作为 cmd 字符串。
file 在给定的python文件执行python脚本。

IPython交互编程模式

IPython 是一个 python 的 交互式 shell,比默认的 python shell 好用得多
IPython 中 的 “I” 代表 交互 interactive
IPython是基于 BSD 开源的

  • 支持自动补全
  • 自动缩进
  • 支持 bash shell 命令
  • 内置了许多很有用的功能和函数
  • 可以使用Linux的终端命令

IPython快捷键

IPython快捷键 描述
Ctrl+P 或上箭头键 后向搜索命令历史中以当前输入的文本开头的命令
Ctrl+N 或下箭头键 前向搜索命令历史中以当前输入的文本开头的命令
Ctrl+R
按行读取的反向历史搜索(部分匹配)
Ctrl+C 中止当前正在执行的代码
Ctrl+A 将光标移动到行首
Ctrl+E 将光标移动到行尾
Ctrl+K 删除从光标开始至行尾的文本
Ctrl+U 清除当前行的所有文本译注12
Ctrl+F 将光标向前移动一个字符
Ctrl+B 将光标向后移动一个字符
Ctrl+L 清屏
Ctrl+Shift+V 从剪贴板粘贴文本

IPython退出解释器有以下两种方式

  • 命令行直接输入 exit
  • 使用热键退出 ctrl + d

脚本式编程

  1. 将如下代码拷贝至 hello.py文件中:
  2. print ("Hello, Python!");
  3. 通过以下命令执行该脚本:
  4. python3 hello.py
  5. 输出结果为:
  6. Hello, Python!

在Linux/Unix系统中,你可以在脚本顶部添加以下命令让Python脚本可以像SHELL脚本一样可直接执行:

  1. #在脚本顶部添加以下命令让Python脚本可以像SHELL脚本一样可直接执行
  2. #! /usr/bin/env python3
  3. chmod +x hello.py #然后修改脚本权限,使其有执行权限,命令如下:
  4. ./hello.py #执行以下命令
  5. #输出结果为
  6. Hello, Python!

编译器与解释器的区别

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

image.png

Python开发工具

开发工具 介绍
系统 WIN7/8/10系统、
MacOS系统、
Windows 95/98/2000/XP
Unix (Solaris, Linux, FreeBSD, AIX, HP/UX, SunOS, IRIX, 等等)
IDE编辑器 PyCharm

Visual Studio Code

Visual Studio Code

image.png

PyCharm

image.png

安装python

下载地址

地址 链接
官网地址 https://www.python.org/downloads/
https://www.python.org/ftp/python/
Python文档下载地址 https://www.python.org/doc/
Anaconda 集成环境 https://repo.anaconda.com/pkgs/
https://www.anaconda.com/products/individual
https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/
pycharm IDE编辑器 https://www.jetbrains.com/pycharm/
相关文章 Python 2.X 版本的教程
Python2.7.14 中文手册
Python 3.X版本的教程
Python 3.6.3 中文手册
Python IDE(集成开发环境)介绍
Python 编码规范(Google)

Windows 系统下安装

3.9.0 python-3.9.0.exe.zip
3.7.7 python-3.7.7-amd64.exe.zip
2.7.18 python-2.7.18.amd64.msi
python-2.7.18.msi

在 Windows 设置环境变量

  1. #临时环境变量, 在环境变量中添加Python目录:在命令提示框中(cmd) : 输入
  2. path=%path%;C:\Python
  3. #永久环境变量
  4. 右键点击"计算机",然后点击"属性"
  5. 然后点击"高级系统设置"
  6. 选择"系统变量"窗口下面的"Path",双击即可!
  7. 然后在"Path"行,添加python安装路径即可(我的D:\Python32),所以在后面,添加该路径即可。 ps:记住,路径直接用分号";"隔开!
  8. 最后设置成功以后,在cmd命令行,输入命令"python",就可以有相关显示

image.png

macOS 系统下安装

使用 Homebrew 安装

  1. brew install python

使用 压缩包 安装

3.9.0 python-3.9.0-macosx10.9.pkg
3.7.2 python-3.7.2-macosx10.9.pkg
2.7.18 python-2.7.18-macosx10.9.pkg

linux使用压缩包安装python

常规安装

  • 打开WEB浏览器访问 https://www.python.org/downloads/source/
  • 选择适用于 Unix/Linux 的源码压缩包
  • 下载及解压压缩包 Python-3.x.x.tgz3.x.x 为你下载的对应版本号
  • 如果你需要自定义一些选项修改 Modules/Setup
  • Python3.6.1 版本为例: ```powershell tar -zxvf Python-3.6.1.tgz && cd Python-3.6.1 ./configure && make && make install

检查 Python3 是否正常可用:

python3 -V

  1. <a name="Wi7ou"></a>
  2. ##### 全命令行安装
  3. 1. 安装之前
  4. ```shell
  5. 1.安装依赖 - pcre来解析正则表达式,使用bzlib对http包的内容进行gzip,openssl支持https(即在ssl协议上传输http),需要在linux安装openssl库
  6. yum install -y gcc openssl-devel bzip2-devel
  1. 安装 ```shell

    2.1.下载 nginx-1.9.9 安装包,在root目录下执行

    wget https://www.python.org/ftp/python/2.7.16/Python-2.7.16.tgz

2.2.解压redis安装包并且进入redis目录

tar -zxvf Python-2.7.16.tgz && cd Python-2.7.16

2.3.编码安装

./configure —enable-optimizations —prefix=/usr/local/Python-2.7.16 && make install

make && make prefix=/usr/local/Python2.7 install

  1. 3. 创建软链接或者配置环境变量
  2. ```shell
  3. #创建软链接
  4. ln -s /usr/local/Python-2.7.16/bin/python /usr/bin/python
  5. #临时环境变量
  6. export PATH="$PATH:/usr/local/Python-2.7.16/bin"
  7. #永久环境变量方式1
  8. #在vim ~/.bash_profile 后写入以下代码 最后 source ~/.bash_profile
  9. export PATH="$PATH:/usr/local/Python-2.7.16/bin"
  10. #永久环境变量方式2
  11. #echo 'export PATH="$PATH:/usr/local/Python-2.7.16/bin"' >> ~/.bash_profile
  12. source ~/.bash_profile
  13. #永久环境变量方式3
  14. echo 'alias python="/usr/local/Python-2.7.16/bin/python"' >> ~/.bash_profile
  15. source ~/.bash_profile

⚠️注意: /usr/local/bin/python 是 Python 的安装目录

快速部署python环境

  1. yum install -y gcc openssl-devel bzip2-devel
  2. wget https://www.python.org/ftp/python/2.7.16/Python-2.7.16.tgz
  3. tar -zxvf Python-2.7.16.tgz && cd Python-2.7.16
  4. ./configure --enable-optimizations --prefix=/usr/local/Python-2.7.16 && make install
  5. ln -s /usr/local/Python-2.7.16/bin/python /usr/bin/python