التابع ZipFile.extract() في بايثون
يستخرج التابع الملف العضو المعطى من الأرشيف إلى المجلد الحالي.
البنية العامة
ZipFile.extract(member, path=None, pwd=None)
المعاملات
member
اسم عضو الأرشيف الكامل أو كائن ZipInfo. يحاول التابع استخراج المعلومات بأكبر دقة ممكنة.
path
المجلد الذي ترغب في استخراج الملف إليه بدلًا من المجلد الحالي.
pwd
كلمة المرور المستخدمة في تعمية الملف المضغوط.
القيمة المعادة
يعيد التابع المسار المسوّى (normalized path) الناشئ (مجلّد أو ملف جديد).
ملاحظات:
- إن امتلك اسم الملف لعضو معيّن في الأرشيف مسارًا مطلقًا، فسيُحذف منه اسم محرّك الأقراص أو نقطة مشاركة UNC إضافة إلى الخطوط المائلة، فيتحول المسار
///foo/barإلىfoo/barفي نظام يونكس، ويتحول المسارC:\foo\barإلىfoo\barفي نظام ويندوز. كذلك تُحذف جميع النقاط".."من اسم الملف، فيتحول المسار../../foo../../ba..rإلىfoo../b..r. كذلك تُستبدل المحارف التي لا يمكن استخدامها في تسمية الملفات (:،<،>،|،"،?،*) بالشرطة السفلية (_). - يؤدي استدعاء التابع
extract()على كائنZipFileمغلق إلى إطلاق الاستثناءValueErrorفي الإصدار 3.6 من بايثون. كان التابع يطلق الاستثناءRuntimeErrorفي الإصدارات السابقة. - أصبح المعامل
pathيستقبل كائنات شبيهة بالمسارات path-like objects في الإصدار 3.6.2 من بايثون.
أمثلة
يبين المثال التالي آلية عمل التابع:
>>> import zipfile
>>> zip = zipfile.ZipFile('files.zip')
>>> zip.extract('file2.html')
'/home/myfiles/file2.html'
انظر أيضًا
- التابع
ZipFile.extractall(): يستخرج التابع جميع الأعضاء في ملف الأرشيف إلى المجلد الحالي.