Python学习日志-01

一、使用入门

(1)问答环节

人们为何使用Python:

  1. 软件质量高:Python更注重可读性一致性软件质量,这将其与脚本语言世界中的其他工具区别开来。因为代码的设计致力于可读性,因此比起传统脚本语言有更优秀的可重用性和可维护性。此外,Python支持软件开发的高级重用机制。例如OOP。

  2. 提高开发效率:Python代码的大小往往只有C++或Java代码的1/5--1/3。这就意味着录入和调试更少的代码,并且在开发完成后维护更少的代码。并且Python程序由于属于脚本语言的缘故,无需编译及链接等步骤,进一步提高效率。

  3. 程序的可移植性:绝大多数Python程序不做任何改变就能在所有主流计算机平台上运行。此外,Python提供了多种可选的独立程序,包括用户图形界面、数据库接入、基于Web的系统等。甚至包括程序启动和文件夹处理等操作系统接口。

  4. 标准库支持:Python内置了众多预编译并可移植的功能模块,这些功能模块统称为标准库。标准库支持一系列应用级的编程任务。此外,Python可通过自行开发的库或众多第三方的应用支持软件进行扩展。

  5. 组件集成:Python脚本可通过灵活的集成机制轻松地与应用程序的其他部分进行通信。这种集成使Python成为产品定制和扩展的工具。如今,Python代码可以调用C和C++的库,也可以被C和C++的程序调用,可以与Java组件集成,可以与COM和.NET等框架进行通信,并且可以通过SOAP、XML-RPC和CORBA等接口与网络进行交互。由此可见,Python绝不仅仅是一个独立的工具

  6. 享受乐趣:Python的易用性强大内置工具使编程成为一种乐趣而不是琐碎的重复劳动(避免重复造轮子)。尽管这是一个难以捉摸的优点,但这将对开发效率的提升有很重要的帮助。

以上因素中,对于绝大多少Python用户而言,前两项(质量和效率)也许是Python最具吸引力的两个优点。


软件质量:

设计上采用简洁高可读性的语法,以及一种高度一致的编程模式

采用模块化设计OOP在内的一些工具来提升程序的可重用性


开发效率:

目标:更少的精力完成更多的任务。

致力于开发速度的最优化:简洁的语法动态类型无需编译内置工具包


Python是“脚本语言”吗:

一般来说,Python可以定义为面向对象的脚本语言:这个定义把对面向对象的支持和全面的面向脚本语言的角色融合在一起。事实上,人们往往以“脚本”而不是“程序”描述Python的代码文件。其中,“脚本”往往倾向于描述简单的顶层代码文件,而“程序”则用来描述那些相对复杂一些的多文件应用。


Python的缺点:

唯一缺点:和C和C++这类编译语言相比,Python的执行速度还不够快*。

简而言之,目前Python的标准实现方式是将源代码的语句编译(或者说是转换)为字节码的形式,之后再将字节码解释出来。由于字节码是一种于平台无关的格式,字节码具有可移植性。然而,因为Python没有将代码编译成底层的二进制代码(例如,Intel芯片的指令),一些Python程序将会比像C这样的完全编译语言慢一些。


使用Python可以做些什么:

  1. 系统编程

  2. 用户图形接口

  3. Internet脚本

  4. 组件集成

  5. 数据库编程

  6. 快速原型

  7. 数值计算和科学计算编程

  8. 游戏、图像、人工智能、XML、机器人等


Python技术上的优点:

  1. 面向对象

  2. 免费

  3. 可移植

  4. 功能强大

    • 动态类型

    • 自动内存管理

    • 大型程序支持

    • 内置对象类型

    • 内置工具。

    • 库工具

    • 第三方工具

  5. 可混合:可以以多种方式轻易地与其他语言编写的组件“粘接”在一起。

  6. 简单易用

  7. 简单易学


本章习题:

  1. 人们选择Python的六个主要原因是什么?

    • 软件质量高

    • 提高开发效率

    • 可移植性

    • 标准库支持

    • 组件集成

    • 享受乐趣

  2. 请列举如今正在使用Python的四个著名的公司或组织的名称

    • Reddit

    • Facebook

    • 知乎

    • 豆瓣

  3. 出于什么样的原因会让你在应用中不使用Python呢?

    • 从缺点入手,Python的缺点就是执行速度不够快,当我的应用对速度要求很苛刻时就不会使用Python

  4. 你可以用Python做什么?

    • Everything

  5. 在Python中import this有什么意义?

    • 触发一个彩蛋,将显示Python之禅。