标签:random-access python-3-x python
我有一个接受任意文件句柄的函数,或者加载所有数据,或者如果对象支持随机访问,则允许延迟加载数据.
class DataLoader: def __init__(self, file): self.file = file self.headers = {} def load_data(self): # header is a hashable (e.g. namedtuple with name, size, offset) header = self.load_next_header() if self.file.random_access: # Return and load the data only as necessary if you can self.headers[header.name] = (header, None) self.file.seek(header.size + self.file.tell()) else: # Load the data up front if you can't self.headers[header.name] = (header, self.file.read(header.size))
如何检查文件对象是否支持随机访问?
解决方法:
您可以使用seekable
方法来检查文件是否支持随机访问.
seekable()
Return
True
if the stream supports random access. IfFalse
,seek()
,tell()
andtruncate()
will raiseOSError
.
标签:random-access,python-3-x,python 来源: https://codeday.me/bug/20191025/1927486.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。