2017年12月29日星期五

1、python初识及开发环境搭建

第一章 python初识及开发环境搭建

1.1 什么是 Python

    Python 是一门优雅而健壮的编程语言,它继承了传统编译语言的强大性和通用性,同时也借鉴了简单脚本和解释语言的易用性。它可以帮你完成工作,而且一段时间以后,你还能看明白自己写的这段代码。你会对自己如此快地学会它和它强大的功能感到十分的惊讶,更不用提你已经完成的工作了!只有你想不到,没有Python 做不到。

1.2 起源

    贵铎·范·罗萨姆(Guido van Rossum)于1989 年底始创了Python,那时,他还在荷兰的CWICentrum voor Wiskunde en Informatica,国家数学和计算机科学研究院)。1991
初,Python 发布了第一个公开发行版。这一切究竟是如何开始的呢?像CC++LispJava
Perl 一样,Python 来自于某个研究项目,项目中的那些程序员利用手边现有的工具辛苦的工作着,他们设想并开发出了更好的解决办法。

1.3 Python语言的特性

高级:
   汇编语言是上帝献给那些挣扎在机器代码中的人的礼物,后来有了FortranC Pascal 语言,它们将计算提升到了崭新的高度,并且开创了软件开发行业。伴随着C 语言诞生了更多的像C++Java 这样的现代编译语言。我们没有止步于此,于是有了强大的、可以进行系统调用的解释型脚本语言,例如TclPerl Python
这些语言都有高级的数据结构,这样就减少了以前“框架”开发需要的时间。像Python 中的列表(大小可变的数组)和字典(哈希表)就是内建于语言本身的。。在核心语言中提供这些重要的构建单元,可以鼓励人们使用它们,缩短开发时间与代码量,产生出可读性更好的代码。
面向对象:
面向对象编程为数据和逻辑相分离的结构化和过程化编程添加了新的活力。面向对象 编程支持将特定的行为、特性以及和/或功能与它们要处理或所代表的数据结合在一起。Python 的面向对象的特性是与生俱来的。然而,Python 绝不想Java Ruby 仅仅是一门面向对象语言,事实上它融汇了多种编程风格。例如,它甚至借鉴了一些像Lisp Haskell 这样的函数语言的特性。
可扩展:
就算你的项目中有大量的Python 代码,你也依旧可以有条不紊地通过将其分离为多个文件或模块加以组织管理。而且你可以从一个模块中选取代码,而从另一个模块中读取属性。更棒的是,对于所有模块,Python 的访问语法都是相同的。不管这个模块是Python 标准库中的还是你一分钟之前创造的,哪怕是你用其他语言写的扩展都没问题!借助这些特点,你会感觉自己根据需要“扩展”了这门语言,而且你已经这么做了。
代码中的瓶颈,可能是在性能分析中总排在前面的那些热门或者一些特别强调性能的地方,可以作为 Python 扩展用 C 重写。需要重申的是,这些接口和纯Python 模块的接口是一模一样的,乃至代码和对象的访问方法也是相同的。唯一不同的是,这些代码为性能带来了显著的提升。
可移植性:
在各种不同的系统上可以看到Python 的身影,这是由于在今天的计算机领域,Python 取得了持续快速的成长。因为Python 是用C 写的,又由于C 的可移植性,使得Python 可以运行在任何带有ANSI C 编译器的平台上。尽管有一些针对不同平台开发的特有模块,但是在任何一个平台上用Python 开发的通用软件都可以稍事修改或者原封不动的在其他平台上运行。这种可移植性既适用于不同的架构,也适用于不同的操作系统。
易学:
Python 关键字少、结构简单、语法清晰。这样就使得学习者可以在相对更短的时间内轻松上手。对初学者而言,可能感觉比较新鲜的东西可能就是Python 的面向对象特点了。那些还未能全部精通OOPObject Oriented Programming, 面向对象的程序设计)的人对径直使用Python还是有所顾忌的,但是OOP 并非必须或者强制的。入门也是很简单的,你可以先稍加涉猎,等到有所准备之后才开始使用。
易维护:
源代码维护是软件开发生命周期的组成部分。只要不被其他软件取代或者被放弃使用,你的软件通常会保持继续的再开发。这通常可比一个程序员在一家公司的在职时间要长得多了。Python 项目的成功很大程度上要归功于其源代码的易于维护,当然这也要视代码长度和复杂度而定。然而,得出这个结论并不难,因为Python 本身就是易于学习和阅读的。Python 另外一个激动人心的优势就是,当你在阅读自己半年之前写的脚本程序的时候,不会把自己搞得一头雾水,也不需要借助参考手册才能读懂自己的软件。
健壮性:
没有什么能够比允许程序员在错误发生的时候根据出错条件提供处理机制更有效的了。针对错误,Python 提供了“安全合理”的退出机制,让程序员能掌控局面。一旦你的Python 由于错误崩溃,解释程序就会转出一个“堆栈跟踪”,那里面有可用到的全部信息,包括你程序崩溃的原因以及是那段代码(文件名、行数、行数调用等等)出错了。这些错误被称为异常。如果在运行时发生这样的错误,Python 使你能够监控这些错误并进行处理。
这些异常处理可以采取相应的措施,例如解决问题、重定向程序流、执行清除或维护步骤、正常关闭应用程序、亦或干脆忽略掉。无论如何,这都可以有效的缩减开发周期中的调试环节。Python 的健壮性对软件设计师和用户而言都是大有助益的。一旦某些错误处理不当,Python 也还能提供一些信息,作为某个错误结果而产生的堆栈追踪不仅可以描述错误的类型和位置,还能指出代码所在模块。
内存管理器:
    C 或者C++最大的弊病在于内存管理是由开发者负责的。所以哪怕是对于一个很少访问、修改和管理内存的应用程序,程序员也必须在执行了基本任务之外履行这些职责。这些加诸在开发者身上的没有必要的负担和责任常常会分散精力。
Python 中,由于内存管理是由Python 解释器负责的,所以开发人员就可以从内存事务中解放出来,全神贯注于最直接的目标,仅仅致力于开发计划中首要的应用程序。这会使错误更少、程序更健壮、开发周期更短。
解释性和(字节)编译性:
Python 是一种解释型语言,这意味着开发过程中没有了编译这个环节。一般来说,由于不是以本地机器码运行,纯粹的解释型语言通常比编译型语言运行的慢。然而,类似于JavaPython实际上是字节编译的,其结果就是可以生成一种近似机器语言的中间形式。这不仅改善了Python的性能,还同时使它保持了解释型语言的优点。
注意:Python 源文件通常用.py 扩展名。当源文件被解释器加载或者显式地进行字节码编译的时候会被编译成字节码。由于调用解释器的方式不同,源文件会被编译成带有.pyc .pyo 扩展名的文。

1.4 Python环境搭建:

Anaconda下载地址https://www.continuum.io/downloads/
其中有两个不同的版本:
2.x & 3.x
适用于多个系统:
Unix (Solaris, Linux, FreeBSD, AIX, HP/UX, SunOS, IRIX, 等等。)
Windows
Mac

1.4.1 Anaconda的安装

第一步:















第二步:

第三步:

第四步:

第五步:

安装完成:











安装完成后呢!你点击Windows

1.4.2 HelloWorld



运行.py文件

 1.4.3 SpyderIDE

Spyder的最大优点就是模仿MATLAB的“工作空间”


















1.4.3 Pycharm的安装







 Pycharm激活码:http://idea.imsxm.com




点击Create New Project,进入如下图的界面,图中的Location是你要创建python的位置,选择好后,点击create





















Pycharm安装完成!!!!

没有评论:

发表评论

Jurassic World 3" opens in theaters this Friday, 27 dinosaurs set to come, 10 first appearance

 The annual mega-production "Jurassic World 3" will be officially released in China on June 10, and simultaneously landed in IMAX ...