الصنف wsgiref.util.FileWrapper()
في بايثون
< Python
صنف تغليف wrapper تحوّل كائنًا شبيهًا بالملف file-like object إلى مكرّر. تدعم الكائنات الناتجة التكرار استخدام التابعين __getitem__() و __iter__() وذلك للتوافق مع الإصدار 2.1 من بايثون ومع Jython.
البنية العامة
wsgiref.util.FileWrapper(filelike, blksize=8192)
المعاملات
blksize
المعامل الاختياري يُمُرّر بصورة متكررة في كلّ مرة يجري فيها المرور على الكائن، إلى التابع read() في الكائن الشبيه بالملف المعطى وذلك للحصول على سلاسل بايتات نصية.
إذا أعاد التابع read() سلسلة بايتات نصية فارغة، تتوقّف عملية التعاود تمامًا.
إن كان الكائن الشبيه بالملفات المعطى يمتلك التابع close() فإنّ الكائن المعاد سيمتلك هذا التابع أيضًا، ويؤدي استدعاؤه في الكائن إلى المعاد إلى استدعائه في الكائن الشبيه بالملفات.
أمثلة
يبين المثال التالي طريقة استخدام الصنف:
from io import StringIO
from wsgiref.util import FileWrapper
# We're using a StringIO-buffer for as the file-like object
filelike = StringIO("This is an example file-like object"*10)
wrapper = FileWrapper(filelike, blksize=5)
for chunk in wrapper:
print(chunk)