反向迭代-python cookbook(第3版)高清中文完整版

时间:2021-06-10 05:19:23
【文件属性】:
文件名称:反向迭代-python cookbook(第3版)高清中文完整版
文件大小:4.84MB
文件格式:PDF
更新时间:2021-06-10 05:19:23
python cookbook 第3版 高清 中文完整版 4.5 反向迭代 问题 你想反方向迭代一个序列 解决方案 使用内置的 reversed() 函数,比如: >>> a = [1, 2, 3, 4] >>> for x in reversed(a): ... print(x) ... 4 3 2 1 反向迭代仅仅当对象的大小可预先确定或者对象实现了 __reversed__() 的特殊方法时才 能生效。 如果两者都不符合,那你必须先将对象转换为一个列表才行,比如: # Print a file backwards f = open('somefile') for line in reversed(list(f)): print(line, end='') 要注意的是如果可迭代对象元素很多的话,将其预先转换为一个列表要消耗大量的内存。 讨论 很多程序员并不知道可以通过在自定义类上实现 __reversed__() 方法来实现反向迭代。 比如:

网友评论