الفرق بين المراجعتين لصفحة: «Python/ZipFile/extract»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:التابع <code>ZipFile.extract()</code> في بايثون}}</noinclude> يستخرج التابع الملف العضو المعطى...' |
لا ملخص تعديل |
||
سطر 8: | سطر 8: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== المعاملات == | == المعاملات == | ||
=== path === | === <code>member</code> === | ||
اسم عضو الأرشيف الكامل أو كائن <code>[[Python/ZipInfo|ZipInfo]]</code>. يحاول التابع استخراج المعلومات بأكبر دقة ممكنة. | |||
=== <code>path</code> === | |||
المجلد الذي ترغب في استخراج الملف إليه بدلًا من المجلد الحالي. | المجلد الذي ترغب في استخراج الملف إليه بدلًا من المجلد الحالي. | ||
=== pwd === | === <code>pwd</code> === | ||
كلمة المرور المستخدمة في تعمية الملف المضغوط. | كلمة المرور المستخدمة في تعمية الملف المضغوط. | ||
== القيمة المعادة == | == القيمة المعادة == | ||
سطر 24: | سطر 23: | ||
'''ملاحظات:''' | '''ملاحظات:''' | ||
* إن امتلك اسم الملف لعضو معيّن في الأرشيف مسارًا مطلقًا، فسيُحذف منه اسم محرّك الأقراص أو نقطة مشاركة UNC إضافة إلى الخطوط المائلة، فيتحول المسار ///foo/bar إلى foo/bar في نظام يونكس، ويتحول المسار C:\foo\bar إلى foo\bar في نظام ويندوز. كذلك تُحذف جميع النقاط ".." من اسم الملف، فيتحول المسار ../../foo../../ba..r إلى foo../b..r. كذلك تُستبدل المحارف التي لا يمكن استخدامها في تسمية الملفات (:، <، >، |، "، ?، *) بالشرطة السفلية (_). | * إن امتلك اسم الملف لعضو معيّن في الأرشيف مسارًا مطلقًا، فسيُحذف منه اسم محرّك الأقراص أو نقطة مشاركة UNC إضافة إلى الخطوط المائلة، فيتحول المسار <code>///foo/bar</code> إلى <code>foo/bar</code> في نظام يونكس، ويتحول المسار <code>C:\foo\bar</code> إلى <code>foo\bar</code> في نظام ويندوز. كذلك تُحذف جميع النقاط <code>".."</code> من اسم الملف، فيتحول المسار <code>../../foo../../ba..r</code> إلى <code>foo../b..r</code>. كذلك تُستبدل المحارف التي لا يمكن استخدامها في تسمية الملفات (<code>:</code>، <code><</code>، <code>></code>، <code>|</code>، <code>"</code>، <code>?</code>، <code>*</code>) بالشرطة السفلية (<code>_</code>). | ||
* يؤدي استدعاء التابع extract() على كائن ZipFile مغلق إلى إطلاق الاستثناء ValueError في الإصدار 3.6 من بايثون. كان التابع يطلق الاستثناء RuntimeError في الإصدارات السابقة. | * يؤدي استدعاء التابع <code>extract()</code> على كائن <code>ZipFile</code> مغلق إلى إطلاق الاستثناء <code>ValueError</code> في الإصدار 3.6 من بايثون. كان التابع يطلق الاستثناء <code>RuntimeError</code> في الإصدارات السابقة. | ||
* أصبح المعامل path يستقبل كائنات شبيهة بالمسارات path-like objects في الإصدار 3.6.2 من بايثون. | * أصبح المعامل <code>path</code> يستقبل كائنات شبيهة بالمسارات path-like objects في الإصدار 3.6.2 من بايثون. | ||
== أمثلة == | == أمثلة == | ||
مراجعة 07:45، 16 نوفمبر 2018
يستخرج التابع الملف العضو المعطى من الأرشيف إلى المجلد الحالي.
البنية العامة
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()
: يستخرج التابع جميع الأعضاء في ملف الأرشيف إلى المجلد الحالي.