Zhao Zhengyang

《Python基础教程》笔记 第19章 有趣的编程

在接下来的10章中,你将把新学到的技能付诸应用。每章都包含一个DIY项目,既介绍了实现解决方案所需的工具,同时又提供了很大的实验空间。 本章将介绍一些通用的Python编程指南。 19.1 为何要有趣 Python的优点之一是让编程变得有趣。当你感到有趣时,就更容易变得高效;而Python有趣的地方之一就是让你非常高效。这就形成了生活中很难得的良性循环。 19.2 编程柔术 柔术(ju...

《Python基础教程》笔记 第17章 扩展Python

Python可以实现任何东西。这门语言功能强大,但有时候速度又太慢。Python的目标是易于使用以及帮助提高开发速度,这种灵活性是以牺牲效率为代价的。对于大多数常见的编程任务来说,Python当然足够快。但如果真的很在意速度,C、C++、Java和Julia等语言通常要快好几个数量级。 17.1 两全其美 虽然只使用C语言能提高程序本身的速度,但肯定会降低编程速度。因此你需要考虑哪一点更重...

《Python基础教程》笔记 第16章 测试

本章介绍测试的基本知识,告诉你如何养成在编程中进行测试的习惯,并介绍一些编写测试的有用工具。 16.1 先测试,后编码 为了计划改变和灵活性,为程序的各个部分编写测试(所谓的单元测试(unit test))非常重要。极限编程(Extreme Programming)的那群人引入了非常有用、但有些违反直觉的格言“测试一点,编码一点”,而不是直观的“编码一点,测试一点”。换句话说,先测试,后编...

《Python基础教程》笔记 第15章 Python和Web

本章讨论Python Web编程的一些方面。Web编程涉及的范围极广,这里挑选了两个重要的主题:屏幕抓取和CGI。 15.1 屏幕抓取 屏幕抓取(screen scraping)是通过程序下载网页并从中提取信息的过程(即网络爬虫)。这种技术很有用,在网页中有你要在程序中使用的信息时,就可以使用它。当然,如果网页是动态的,即随时间变化的,这就更有用了。否则,只需下载一次并手工提取信息。(理想...

《Python基础教程》笔记 第14章 网络编程

本章将通过示例展示如何使用Python来编写使用网络的程序。Python提供了强大的网络编程支持,有很多库实现了常见的网络协议以及基于这些协议的抽象层,让你能够专注于程序的逻辑,而无需关心通过线路来传输比特的问题。 本章首先概述Python标准库中的一些网络模块。然后讨论socketserver和相关的类,并简要介绍同时处理多个连接的各种方法。最后介绍Twisted,这是一个使用Pytho...

《Python基础教程》笔记 第13章 数据库支持

本章讨论Python数据库API(一种连接到SQL数据库的标准化方式),并演示如何使用该API来执行一些基本的SQL。 这里不会提供关系型数据库和SQL语言教程,可以阅读有关数据库(例如PostgreSQL、MySQL或本章使用的SQLite)的文档或其他教程(例如SQLCourse和SQL Tutorial)。 本章使用的是简单数据库SQLite,但绝非唯一的选择。Python支持的数...

《Python基础教程》笔记 第12章 图形用户界面

本章将介绍图形用户界面(graphical user interface, GUI)的基本知识——包含按钮、文本框等控件的窗口。Tkinter是事实上的Python标准GUI工具包,包含在Python标准安装中。 本章简要地介绍Tkinter的用法。详见文档tkinter模块和TkDocs。 12.1 创建示例GUI应用程序 下面介绍如何创建一个简单的GUI应用程序。你的任务是编写一个简...

《Python基础教程》笔记 第11章 文件

本章将介绍文件和流,使你能够永久存储数据以及处理来自其他程序的数据。 11.1 打开文件 可以使用open()函数来打开文件。该函数将文件名作为唯一的必需参数,并返回一个文件对象。 假设在当前目录(命令行当前工作目录,os.getcwd())中有一个名为somefile.txt的文本文件,可以这样打开它: >>> f = open('somefile.txt') ...