Python简介

Python相信很多人都听说过,也大多都知道Python究竟是什么,其实也不难理解,简单的说,Python是一种跨平台的计算机程序设计语言。 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。

Python在设计上坚持了清晰划一的风格,这使得Python成为一门易读、易维护,并且被大量用户所欢迎的、用途广泛的语言。
Python的作者有意的设计限制性很强的语法,使得不好的编程习惯(例如if语句的下一行不向右缩进)都不能通过编译。其中很重要的一项就是Python的缩进规则

一个和其他大多数语言(如C)的区别就是,一个模块的界限,完全是由每行的首字符在这一行的位置来决定的(而C语言是用一对花括号{}来明确的定出模块的边界的,与字符的位置毫无关系)。这一点曾经引起过争议。因为自从C这类的语言诞生后,语言的语法含义与字符的排列方式分离开来,曾经被认为是一种程序语言的进步。不过不可否认的是,通过强制程序员们缩进(包括if,for和函数定义等所有需要使用模块的地方),Python确实使得程序更加清晰和美观。

与MATLAB的对比

说起科学计算,首先会被提到的可能是MATLAB。然而除了MATLAB的一些专业性很强的工具箱还无法被替代之外,MATLAB的大部分常用功能都可以在Python世界中找到相应的扩展库。和MATLAB相比,用Python做科学计算有如下优点:

  • 首先,MATLAB是一款商用软件,并且价格不菲。而Python完全免费,众多开源的科学计算库都提供了Python的调用接口。用户可以在任何计算机上免费安装Python及其绝大多数扩展库。
  • 其次,与MATLAB相比,Python是一门更易学、更严谨的程序设计语言。它能让用户编写出更易读、易维护的代码。
  • 最后,MATLAB主要专注于工程和科学计算。然而即使在计算领域,也经常会遇到文件管理、界面设计、网络通信等各种需求。而Python有着丰富的扩展库,可以轻易完成各种高级任务,开发者可以用Python实现完整应用程序所需的各种功能。

设计哲学

Python的设计哲学是“优雅”、“明确”、“简单”。因此,Perl语言中“总是有多种方法来做同一件事”的理念在Python开发者中通常是难以忍受的。Python开发者的哲学是“用一种方法,最好是只有一种方法来做一件事”。在设计Python语言时,如果面临多种选择,Python开发者一般会拒绝花俏的语法,而选择明确的没有或者很少有歧义的语法。由于这种设计观念的差异,Python源代码通常被认为比Perl具备更好的可读性,并且能够支撑大规模的软件开发。这些准则被称为Python格言。在Python解释器内运行import this可以获得完整的列表。

Python是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。

Python本身被设计为可扩充的。并非所有的特性和功能都集成到语言核心。Python提供了丰富的API和工具,以便程序员能够轻松地使用C语言、C++、Cython来编写扩充模块。Python编译器本身也可以被集成到其它需要脚本语言的程序内。因此,很多人还把Python作为一种“胶水语言”(glue language)使用。使用Python将其他语言编写的程序进行集成和封装。

运行原理

Python在执行时,首先会将.py文件中的源代码编译成Python的byte code(字节码),然后再由Python Virtual Machine(Python虚拟机)来执行这些编译好的byte code。这种机制的基本思想跟Java,.NET是一致的。
然而,Python Virtual Machine与Java或.NET的Virtual Machine不同的是,Python的Virtual Machine是一种更高级的Virtual Machine。
这里的高级并不是通常意义上的高级,不是说Python的Virtual Machine比Java或.NET的功能更强大,而是说和Java 或.NET相比,Python的Virtual Machine距离真实机器的距离更远。或者可以这么说,Python的Virtual Machine是一种抽象层次更高的Virtual Machine。基于C的Python编译出的字节码文件,通常是.pyc格式。
除此之外,Python还可以以交互模式运行,比如主流操作系统Unix/Linux、Mac、Windows都可以直接在命令模式下直接运行Python交互环境。直接下达操作指令即可实现交互操作。

基本语法

Python的设计目标之一是让代码具备高度的可阅读性。它设计时尽量使用其它语言经常使用的标点符号和英文单字,让代码看起来整洁美观。
编写规范:
Python开发者有意让违反了缩进规则的程序不能通过编译,以此来强制程序员养成良好的编程习惯。并且Python语言利用缩进表示语句块的开始和退出(Off-side规则),而非使用花括号或者某种关键字。增加缩进表示语句块的开始,而减少缩进则表示语句块的退出。缩进成为了语法的一部分。
if示例:

age = int(input("请输入年龄: "))
if age < 18:
     print("还未成年")
   print("还在读书")
print("这句话在if语句块的外面。")1234

根据PEP的规定,必须使用4个空格来表示每级缩进(不清楚4个空格的规定如何,在实际编写中可以自定义空格数,但是要满足每级缩进间空格数相等)。使用Tab字符和其它数目的空格虽然都可以编译通过,但不符合编码规范。支持Tab字符和其它数目的空格仅仅是为兼容很旧的的Python程序和某些有问题的编辑程序。

控制语句

  • if语句
    当条件成立时运行语句块。经常与else, elif(相当于else if) 配合使用。
  • for语句
    遍历列表、字符串、字典、集合等迭代器,依次处理迭代器中的每个元素。
  • while语句
    当条件为真时,循环运行语句块。
  • try语句
    与except,finally配合使用处理在程序运行中出现的异常情况。
  • class语句
    用于定义类型。
  • def语句
    用于定义函数和类型的方法。
  • pass语句
    表示此行为空,不运行任何操作。
  • assert语句
    用于程序调试阶段时测试运行条件是否满足。
  • with语句
    Python2.6以后定义的语法,在一个场景中运行语句块。比如,运行语句块前加密,然后在语句块运行退出后解密。
  • yield语句
    在迭代器函数内使用,用于返回一个元素。自从Python 2.5版本以后。这个语句变成一个运算符。
  • raise语句
    制造一个错误。
  • import语句
    导入一个模块或包。
  • from … import语句
    从包导入模块或从模块导入某个对象。
  • import … as语句
    将导入的对象赋值给一个变量。
  • in语句
    判断一个对象是否在一个字符串/列表/元组里。

安装

首先要安装一个环境,就像JAVA的jdk环境一样,今天就和大家说下在 Windows 上安装 Anaconda。

在官网上下载 Anaconda 的安装文件,我用的是3.5.1.0版本;

Anaconda3-5.1.0-Windows-x86_64.exe,下载好后记住存放地址;

如果操作系统是 Win10 系统,请右键点击安装文件,选择以“管理员身份运 行”(之前出现过在 Win10 上,未使用管理员权限安装会导致后面 Scrapy 爬虫安装失败的情况) 。

ipython 安装出错 python安装教程_Python


然后开始安装:

ipython 安装出错 python安装教程_Python_02


NEXT开始下一步:

ipython 安装出错 python安装教程_Python_03


ipython 安装出错 python安装教程_ipython 安装出错_04


选择All Users,如上图所示:

ipython 安装出错 python安装教程_Machine_05

自己选择要存放的路径,如上图所示:

ipython 安装出错 python安装教程_ipython 安装出错_06


勾选第二个复选框,如上图所示:

点击install,会出现新窗口选择,

点击 Skip,不安装 VSCode。我们使用 PyCharm 作为开发工具。如下图所示:

ipython 安装出错 python安装教程_Machine_07


接下来等待安装就好了,安装好以后,就要开始配置环境变量了。

在 Windows 设置环境变量

通过以下方式设置:

  • 右键点击"计算机",然后点击"属性"然后点击"高级系统设置"
  • 选择"系统变量"窗口下面的"Path",双击即可!
  • 然后在"Path"行,添加python安装路径即可(我的是F:\python\Anaconda3),安装的时候自己建了个Anaconda3文件夹,所以在后面,添加该路径即可。
    注意:记住,路径直接用分号";"隔开!
  • 还要配置一个东西,不然使用不了python的相关命令就是Scripts,我的是F:\python\Anaconda3\Scripts,你们自己看看在哪,切记一定不要忘了配置这个。
  • 最后设置成功以后,在cmd命令行,输入命令"python",就可以有相关显示。

ipython 安装出错 python安装教程_缩进_08


ipython 安装出错 python安装教程_Machine_09


如上图所示,这样就配置成功了!输入jupyter notebook 就可以跳转jupyter网页版页面,如下图所示:

ipython 安装出错 python安装教程_ipython 安装出错_10


ipython 安装出错 python安装教程_ipython 安装出错_11

这样就可以操作了!