第一章 问答环节
Q:Python是一门脚本语言吗
A:一般意义而言,脚本语言一词可能最适用于描述一种Python所支持的快速和灵活的开发模式,而不是特定的应用领域的概念
Q:Python的缺点是什么
A:执行速度还不够快。目前Python的标准实现方式是将源代码的语句编译为字节码的形式,之后再将字节码解释出来;由于字节码是一种与平台无关的格式,因此python具有可移植性。但是因为python通常不会将代码编译成底层的二进制代码,所以一些python程序会比C这类完全编译语言慢一些
Q:如今谁在使用Python
A:略。但是有几个网页可以参考:
- 成功案例:http://www.python.org/about/success
- 应用程序领域:http://www.python.org/about/apps
- 用户意见:http://www.python.org/about/quotes
- 维基百科:http://en.wikipedia.org/wiki/List_of_Python_software
Q:使用Python可以做些什么
A:
- 系统编程——对操作系统服务的内置接口,使其能够成为编写可移植的维护操作系统的管理工具和部件的理想工具。POSIX、OS
- 图形用户界面GUI——Python的简洁以及快速的开发周期十分适合开发桌面GUI程序。tkinter、PMW、Dabo、wxPython、PyQt、PyGTK、PyWin32、IronPython、Jython
- Internet脚本——提供了标准的Internet模块,使得Python程序能够广泛地在多种网络任务中发挥作用,无论是在服务器端还是客户端
- 组件集成——Python通过C/C++系统进行扩展以及嵌入C/C++系统的特性,使其能够作为一种灵活的粘合语言,可以脚本化处理其他系统和组件的行为
- 数据库编程——对于传统的数据库需求,Python提供了对于主流关系数据库系统的接口;Python定义了一种通过Python脚本存取SQL数据库系统的可移植的数据库API,这个API对于各种底层应用的数据库系统都是统一的。在非SQL部分,Python的标准pickle模块提供了一个简单的对象持久化系统;能够让程序轻松地将整个Python对象保存到文件和类文件载体中,以及从这些载体中恢复。
- 快速原型——可以先用Python做系统原型,之后再组件移植到C、C++等编译语言中
- 数值计算和科学计算编程——Numpy、SciPy
- 更多内容:游戏、图像、数据挖掘、机器人、excel等
Q:Python如何开发并获得支持
A:PEP、PSF、PyCon
Q:Python有哪些技术上的优点
A:面向对象和函数式,免费,可移植,功能强大——动态类型、自动内存管理、大型程序支持、内置对象类型、内置工具、库工具、第三方工具,可混合,相对简单易用,相对简单易学
Q:Python和其他语言比起来怎么样
A:
- 比Tcl强大。Python强有力地支持“大规模编程”,使其适用于开发大型系统,它的应用程序库也更加丰富。
- 比Perl更具可读性。Python有着简洁的语法和简单连贯的设计,这反过来使得Python更具可读性和更易于维护,同时有助于减少程序bug。
- 比Java和C#更简单、更易于使用。Python是一门脚本语言,但Java和C#两者从像C++这样更加大型的OOP系统语言中继承了许多语法和复杂性。
- 比C++更简单、更易于使用。Python代码比等效的C++代码更加简单,长度只有其五分之一到三分之一。尽管作为脚本语言,Python有时能扮演许多不同的角色。
- 比C更加简单和高级。Python远离底层硬件架构从而降低了代码复杂性,拥有更好的组织结构,并比C(C++的祖先)更加友善。
- 比Visual Basic更强大,用途广泛,也更具备跨平台特性。Python是更加广泛使用的更丰富的语言,它的开源本质意味着它不可能被某一个公司所掌控。
- 比PHP更易懂并且用途更广。Python也用来构建Web站点,但是,它也应用于几乎每个计算机领域,从机器人到电影动画和游戏。
- 比JavaScript更强大和用途广泛。Python有一个更大的工具集,也并不是牢牢地束缚于Web开发。它也用于科学建模、仪器调试等。
- 比Ruby更具可读性,并更为人们所接受。Python的语法混乱更少,尤其在较复杂代码中,同时它的OOP对用户和和不太使用OOP的工程中是完全可选的。
- 比Lua更成熟和受到更广泛关注。Python更加庞大的特性集合和更加扩展的库支持给予其比Lua(一门和Tcl一样的嵌入式“胶水”语言)更加宽广的视野。
- 比SmallTalk、Lisp和Prolog更不晦涩。Python拥有这类函数式语言的动态品味,但是也拥有开发者和定制系统终端用户都可接受的传统语法。
Python学习手册 文章被收录于专栏
《Python学习手册(第五版)》学习随记