1.计时
在计算机领域有一个特殊的时间,叫做epoch,它表示的时间是1970-01-01 00:00:00 UTC。
Python中time模块的一个方法 time.time() :
返回的就是从epoch到当前的秒数(不考虑闰秒)。这个值被称为unix时间戳。于是我们可以用这个方法得到程序开始和结束所用的时间,进而算出运行的时间。
time模块的另一个方法time.sleep(secs):
它可以让程序暂停secs秒。在抓取网页的时候,适当让程序sleep一下,可以减少短时间内的请求,提高请求的成功率。
2.pickle模块
将数据转成文本的过程又被称为“序列化”,即将对象状态转换为可保持或传输的格式的过程。对应的,从序列化的格式中解析对象状态的过程被称为“反序列化”。pickle模块即可实现。
在Python3中把Py2中的cPickle和pickle模块统一为pickle模块。Py2中的cPickle,它的功能及用法和 pickle 模块完全相同,只不过它是用C语言编写的,因此要快得多(比pickle快1000倍)。
序列化(存储):
import pickle
test_data = ['Save me!', 123.456, True]
f = file('test.data', 'w')#Py3中应告诉Py,使用二进制进行读写操作,即('wb','rb')
pickle.dump(test_data, f)
f.close()
反序列化(去存储):
import pickle
f = file('test.data')
test_data = pickle.load(f)
f.close()
print (test_data)
3.列表解析
即通过一个已有的列表生成一个新的列表。
list_2 = [i for i in list_1 if i % 2 == 0]