本笔记是基于《Python学习手册-原书第五版》第一章 问答环节的个人理解。
Python的优点是什么?为什么?
1.Python在代码设计之初就具有良好的可读性,因此具备了比传统脚本语言更优秀的可重用性和可维护性。
2.Python的一致性保证代码易于理解,支持软件开发的高级重用机制。如object-oriented(面向对象,简称OO),function programming(函数式编程)。
3.Python程序可以立即运行,无需编译/静态语言所必须的编译及链接等步骤。
4.Python将程序转化为字节码,再用字节码进行解释。字节码无关平台使用,所以Python具有可移植性。
5.Python内置了众多预构建且可移植的功能模块——standard library(标准库),涵盖了从字符模式到网络脚本变成的匹配等方面。还有众多的第三方库来支持软件的扩展。
6.Python可通过多种集成机制与应用程序其他部门进行通信。如可以调用C和C++的库,被C和C++调用;可以与Java或.NET的组件集成;可以与COM和Silverlight等框架通信;可以通过串行端口与设备进行链接;可以通过SOAP、XML-RPC和CORBA等接口与网络进行交互。
什么是脚本?什么是程序?
script——脚本往往倾向于描述简单的顶层代码文件。接近人类思维。
program——程序往往用来描述复杂的文件处理和应用。接近机器思维。
Python的缺点是什么?
和C与C++这类完全编译并且较底层的语言相比,执行速度不够快。因为Python先将源代码语句编译byte code——字节码的形式,之后再将字节码解释出来。
Python和库的更新速率有时候会成为使用者的负担,使用者需要花精力去不断学习,而且很有可能白费功夫。
Python容易上手,但是学习曲线非常陡峭。越到后面,计算机相关基础知识都需要恶补。
Python可以应用在哪些方面?
1.Web编程
Django、Tornado、Flask、Twisted等框架。
2.黑客编程
屏幕窃取,键盘监听,图文文件攻击,搭建测试环境,SQL注入,密码破解,后门程序,端口扫描,SSH僵尸网络,编写DOS脚本等
3.爬虫编程
爬虫,反反爬虫
4.机器学习
提出问题,理解数据,数据清洗,构建模型,评估模型。
5.人工智能
利用胶水特性,组合C和C++的库。CPython的C API是双向融合的,可以直接对外暴露封装过的Python对象,还可以允许用户通过继承这些自定义对象来引入新特性,甚至可以从C代码当中再调用Python的函数
6.系统运维
对操作系统服务的内置接口,使其能够称为编写可移植的维护操作系统的管理工具和部件的理想工具。
7.图形处理
胶水特性。可以多方面利用API。
8.数据库编程
Python提供了对所有主流关系数据库系统的接口。
9.网络编程
Python提供了标准Internet模块,使得Python程序能够广泛地在多种网络任务中发挥作用。