尽管用文件形式将数据保存到磁盘,已经是一种不错的方式。但是,人们还是发明了更具有格式化特点,并且写入和读取更快速便捷的东西——数据库(如果阅读港台的资料,它们称之为“资料库”)。维基百科对数据库有比较详细的说明:
到目前为止,地球上有三种类...
AI君
3年前 (2019-03-27) 140℃
0喜欢
标准库的内容已经非常多了,前面仅仅列举几个,但是python给编程者的支持还不仅仅在于标准库,它还有不可胜数的第三方库。因此,如果作为一个python编程者,即使你达到了master的水平,最好的还是要在做某个事情之前,在网上搜一下是否有标...
AI君
3年前 (2019-03-27) 133℃
0喜欢
xml
xml在软件领域用途非常广泛,有名人曰:
对于xml如果要做一个定义式的说明,就不得不引用w3school里面简洁而明快的说明:
XML 指可扩展标记语言(EXtensible Markup Language)
XML 是一种标记...
AI君
3年前 (2019-03-27) 130℃
0喜欢
json
就传递数据而言,xml是一种选择,还有另外一种,就是json,它是一种轻量级的数据交换格式,如果读者要做web编程,是会用到它的。根据维基百科的相关内容,对json了解一二:
关于json更为详细的内容,可以参考其官方网站:htt...
AI君
3年前 (2019-03-27) 143℃
0喜欢
urllib
urllib模块用于读取来自网上(服务器上)的数据,比如不少人用python做爬虫程序,就可以使用这个模块。先看一个简单例子:
>>> import urllib
>>> itdiffer ...
AI君
3年前 (2019-03-27) 150℃
0喜欢
heapq
堆(heap),是一种数据结构。用维基百科中的说明:
对于这个新的概念,读者不要感觉心慌意乱或者恐惧,因为它本质上不是新东西,而是在我们已经熟知的知识基础上的扩展。
堆的实现是通过构造二叉堆,也就是一种二叉树。
基本知识
这是一...
AI君
3年前 (2019-03-27) 135℃
0喜欢
“一寸光阴一寸金,寸金难买寸光阴”,时间是宝贵的。
在日常生活中,“时间”这个属于是比较笼统和含糊的。在物理学中,“时间”是一个非常明确的概念。在python中,“时间”可以通过相关模块实现。
calendar
>>> i...
AI君
3年前 (2019-03-27) 140℃
0喜欢
OS
os模块提供了访问操作系统服务的功能,它所包含的内容比较多。
>>> import os
>>> dir(os)
['EX_CANTCREAT', 'EX_CONFIG', 'EX_DATAERR'...
AI君
3年前 (2019-03-27) 181℃
0喜欢
python标准库内容非常多,有人专门为此写过一本书。在本教程中,由于我的原因,不会将标准库进行完整的详细介绍,但是,我根据自己的理解和喜好,选几个呈现出来,一来显示标准库之强大功能,二来演示如何理解和使用标准库。
sys
这是一个跟pyt...
AI君
3年前 (2019-03-27) 156℃
0喜欢
“python自带‘电池’”,听说过这种说法吗?
在python被安装的时候,就有不少模块也随着安装到本地的计算机上了。这些东西就如同“能源”、“电力”一样,让python拥有了无限生机,能够非常轻而易举地免费使用很多模块。所以,称之为“自...
AI君
3年前 (2019-03-27) 136℃
0喜欢
在本章之前,Python还没有显示出太突出的优势。本章开始,读者就会越来越感觉到Python的强大了。这种强大体现在“模块自信”上,因为Python不仅有很强大的自有模块(或者包、库,比如为标准库),还有海量的第三方模块(或者包、库),任何...
AI君
3年前 (2019-03-27) 131℃
0喜欢
try…except…是处理异常的基本方式。在原来的基础上,还可有扩展。
处理多个异常
处理多个异常,并不是因为同时报出多个异常。程序在运行中,只要遇到一个异常就会有反应,所以,每次捕获到的异常一定是一个。所谓处理多...
AI君
3年前 (2019-03-27) 132℃
0喜欢
按照一般的学习思路,掌握了前两节内容,已经足够编程所需了。但是,我还想再多一步,还是因为本教程的读者是要from beginner to master。
assert
>>> assert 1==1
>>>...
AI君
3年前 (2019-03-27) 131℃
0喜欢
虽然在前面的学习中,已经遇到了错误和异常问题,但是一直没有很认真的研究它。现在来近距离观察错误和异常。
错误
python中的错误之一是语法错误(syntax errors),比如:
>>> for i in range(...
AI君
3年前 (2019-03-27) 130℃
0喜欢
生成器(英文:generator)是一个非常迷人的东西,也常被认为是python的高级编程技能。不过,我依然很乐意在这里跟读者——尽管你可能是一个初学者——探讨这个话题,因为我相信读者看本教程的目的,绝非仅仅将自己限制于初学者水平,一定有一...
AI君
3年前 (2019-03-27) 119℃
0喜欢
在《文件(1)》中提到,如果要打开文件,一种比较好的方法使使用with语句,因为这种方法,不仅结构简单,更重要的是不用再单独去判断某种异常情况,也不用专门去执行文件关闭的指令了。
本节对这个有点神奇的with进行深入剖析。
概念
跟with...
AI君
3年前 (2019-03-27) 113℃
0喜欢
迭代,对于读者已经不陌生了,曾有专门一节来讲述,如果印象不深,请复习《迭代》。
正如读者已知,对序列(列表、元组)、字典和文件都可以用iter()方法生成迭代对象,然后用next()方法访问。当然,这种访问不是自动的,如果用for循环,就可...
AI君
3年前 (2019-03-27) 140℃
0喜欢
探究更多的类属性,在一些初学者的教程中,一般很少见。我之所以要在这里也将这部分奉献出来,就是因为本教程是“From Beginner to Master”。当然,不是学习了类的更多属性就能达到Master水平,但是这是通往Master的一步...
AI君
3年前 (2019-03-27) 140℃
0喜欢
书接上回,不管是实例还是类,都用__dict__来存储属性和方法,可以笼统地把属性和方法称为成员或者特性,一句话概括,就是__dict__存储对象成员。但,有时候访问的对象成员没有存在其中,就是这样:
>>> class ...
AI君
3年前 (2019-03-27) 147℃
0喜欢
在前面几节讨论类的时候,经常要将类实例化,然后通过实例来调用类的方法(函数)。在此,把前面经常做的这类事情概括一下:
方法是类内部定义函数,只不过这个函数的第一个参数是self。(可以认为方法是类属性,但不是实例属性)
必须将类实例化之后...
AI君
3年前 (2019-03-27) 147℃
0喜欢