الإنجليزيةالفرنسيةالإسبانية

OnWorks فافيكون

Pathlib - عبر الإنترنت في السحابة

قم بتشغيل pathlib في مزود استضافة OnWorks المجاني عبر Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

هذا هو مسار الأمر الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة عبر الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

برنامج:

اسم


pathlib - وثائق باثليب

يمكن أن تصبح معالجة مسارات نظام الملفات ككائنات سلسلة مرهقة: متعددة
مكالمات إلى os.path.join () or os.path.dirname ()، إلخ. تقدم هذه الوحدة مجموعة من الفصول الدراسية
يعرض جميع العمليات الشائعة على المسارات بطريقة سهلة وموجهة للكائنات.

تُستخدم هذه الوحدة بشكل أفضل مع Python 3.2 أو ما بعده ، ولكنها أيضًا متوافقة مع Python
2.7

NOTE:
هذه الوحدة كانت شامل في مكتبة Python 3.4 القياسية بعد PEP 428
قبول. ما عليك سوى تثبيته لـ Python 3.3 أو أقدم.

رؤية أيضا:
PEP 428: الأساس المنطقي لتصميم Pathlib النهائي وواجهة برمجة التطبيقات.

DOWNLOAD


الإصدارات المستقلة متاحة في PyPI: http://pypi.python.org/pypi/pathlib/

يتم الآن التطوير الرئيسي في مكتبة Python القياسية: راجع ملف Python
المطور توجيه.

يمكن العثور على مستودع الصيانة لوحدة المنفذ الخلفي المستقلة هذه على BitBucket ،
لكن من المتوقع أن يكون النشاط منخفضًا جدًا: https://bitbucket.org/pitrou/pathlib/

مستوى عال أنظر إلى


تقدم هذه الوحدة فصولاً تمثل مسارات نظام الملفات مع دلالات مناسبة لها
أنظمة تشغيل مختلفة. يتم تقسيم فئات المسار بين نقي مساراتالتي تقدم
عمليات حسابية بحتة بدون إدخال / إخراج ، و الخرسانة مساراتالتي ترث من طاهر
المسارات ولكنها توفر أيضًا عمليات الإدخال / الإخراج. [صورة]

إذا لم تكن قد استخدمت هذه الوحدة من قبل أو لم تكن متأكدًا من الفئة المناسبة لك
مهمة، مسار هو على الأرجح ما تحتاجه. يقوم بإنشاء مثيل أ الخرسانة مسار للمنصة
الرمز قيد التشغيل.

المسارات النقية مفيدة في بعض الحالات الخاصة ؛ على سبيل المثال:

1. إذا كنت تريد معالجة مسارات Windows على جهاز Unix (أو العكس). انت لا تستطيع
إنشاء مثيل أ WindowsPath عند التشغيل على نظام Unix ، ولكن يمكنك إنشاء مثيل له
PureWindowsPath.

2. أنت تريد التأكد من أن التعليمات البرمجية الخاصة بك تتعامل فقط مع المسارات دون الوصول فعليًا
نظام التشغيل. في هذه الحالة ، قد يكون إنشاء مثيل من الفئات النقية مفيدًا منذ تلك الفئات
ببساطة ليس لديها أي عمليات الوصول إلى نظام التشغيل.

أساسي استخدام


استيراد فئات الوحدة:

>>> من استيراد pathlib *

سرد الدلائل الفرعية:

>>> ع = المسار (".")
>>> [x for x في p.iterdir () if x.is_dir ()]
[PosixPath ('. hg') ، PosixPath ('docs') ، PosixPath ('dist') ،
PosixPath ('__ pycache__')، PosixPath ('build')]

سرد ملفات مصدر Python في شجرة الدليل هذه:

>>> قائمة (p.glob ('** / *. py'))
[PosixPath ('test_pathlib.py') ، PosixPath ('setup.py') ،
PosixPath ('pathlib.py') ، PosixPath ('docs / conf.py') ،
PosixPath ('build / lib / pathlib.py')]

التنقل داخل شجرة الدليل:

>>> ع = المسار ('/ الخ')
>>> q = p / 'init.d' / 'reboot'
>>> س
PosixPath ('/etc/init.d/reboot')
>>> ف حل ()
PosixPath ('/ etc / rc.d / init.d / halt')

الاستعلام عن خصائص المسار:

>>> q. موجود ()
صواب
>>> q.is_dir ()
خطأ

فتح ملف:

>>> مع q.open () مثل f: f.readline ()

'#!/ بن / باش\ن'

PURE مسارات


توفر كائنات المسار الخالص عمليات معالجة المسار التي لا تصل فعليًا إلى ملف
نظام الملفات. هناك ثلاث طرق للوصول إلى هذه الفئات ، والتي نسميها أيضًا نكهات:

فئة Pathlib.PurePath (* pathsegments)
فئة عامة تمثل نكهة مسار النظام (إنشاء مثيل لها
إما أ PurePosixPath أو PureWindowsPath):

>>> PurePath ('setup.py') # يعمل على جهاز Unix
PurePosixPath ('setup.py')

كل عنصر من عناصر المسارات يمكن أن يكون إما سلسلة أو كائن بايت يمثل ملف
جزء المسار يمكن أن يكون أيضًا كائن مسار آخر:

>>> PurePath ('foo'، 'some / path'، 'bar')
PurePosixPath ("foo / Some / path / bar")
>>> PurePath (مسار ('foo') ، مسار ('شريط'))
PurePosixPath ("foo / bar")

متى المسارات فارغ ، الدليل الحالي مفترض:

>>> PurePath ()
PurePosixPath (".")

عندما يتم إعطاء عدة مسارات مطلقة ، يتم أخذ الأخير كمرساة (محاكاة
os.path.join ()سلوك):

>>> PurePath ('/ الخ'،'/ البيرة"،" lib64 ")
PurePosixPath ('/ usr / lib64')
>>> PureWindowsPath ('c: / Windows'، 'd: bar')
PureWindowsPath ('d: bar')

ومع ذلك ، في مسار Windows ، لا يؤدي تغيير الجذر المحلي إلى تجاهل السابق
إعداد محرك الأقراص:

>>> PureWindowsPath ('c: / Windows'، '/ Program Files')
PureWindowsPath ('c: / Program Files')

يتم تصغير الخطوط المائلة الهامشية والنقاط المفردة ، لكن النقاط المزدوجة ("..") غير صحيح،
لأن هذا من شأنه أن يغير معنى المسار في مواجهة الروابط الرمزية:

>>> PurePath ("foo // bar")
PurePosixPath ("foo / bar")
>>> PurePath ("foo /./ bar")
PurePosixPath ("foo / bar")
>>> PurePath ("foo /../ bar")
PurePosixPath ("foo /../ bar")

(نهج ساذج من شأنه أن يجعل PurePosixPath ("foo /../ bar") أي ما يعادل
PurePosixPath ("شريط")، وهو خطأ إذا فو هو رابط رمزي لآخر
الدليل)

فئة pathlib.PurePosixPath (* pathsegments)
فئة فرعية من PurePath، تمثل نكهة المسار هذه مسارات أنظمة ملفات بخلاف Windows:

>>> PurePosixPath ('/ الخ')
PurePosixPath ('/ الخ')

المسارات تم تحديده بالمثل PurePath.

فئة pathlib.PureWindowsPath (* pathsegments)
فئة فرعية من PurePath، تمثل نكهة المسار هذه مسارات نظام ملفات Windows:

>>> PureWindowsPath ('c: / Program Files /')
PureWindowsPath ('c: / Program Files')

المسارات تم تحديده بالمثل PurePath.

بغض النظر عن النظام الذي تعمل عليه ، يمكنك إنشاء مثيل لكل هذه الفئات ،
نظرًا لأنهم لا يقدمون أي عملية تقوم بإجراء مكالمات النظام.

أسئلة عامة HAS
المسارات غير قابلة للتغيير وقابلة للغسل. مسارات من نفس النكهة قابلة للمقارنة وقابلة للترتيب.
تحترم هذه الخصائص دلالات النكهة القابلة للطي:

>>> PurePosixPath ('foo') == PurePosixPath ('FOO')
خطأ
>>> PureWindowsPath ('foo') == PureWindowsPath ('FOO')
صواب
>>> PureWindowsPath ('FOO') في {PureWindowsPath ('foo')}
صواب
>>> PureWindowsPath ('C:') <PureWindowsPath ('d:')
صواب

مسارات ذات نكهة مختلفة تقارن غير متساوية ولا يمكن ترتيبها:

>>> PureWindowsPath ('foo') == PurePosixPath ('foo')
خطأ
>>> PureWindowsPath ('foo') <PurePosixPath ('foo')
تتبع (آخر مكالمة أخيرة):
ملف " "، السطر 1 ، في
TypeError: unorderable types: PureWindowsPath () <PurePosixPath ()

مشغلي
يساعد عامل التشغيل المائل في إنشاء مسارات فرعية ، بشكل مشابه لـ os.path.join:

>>> p = PurePath ('/ الخ')
>>> ص
PurePosixPath ('/ الخ')
>>> ف / 'init.d' / 'apache2'
PurePosixPath ('/etc/init.d/apachexnumx')
>>> q = PurePath ('bin')
>>> '/ البيرة'/ ف
PurePosixPath ('/ البيرة / بن')

تمثيل السلسلة للمسار هو مسار نظام الملفات الخام نفسه (في الشكل الأصلي ،
على سبيل المثال مع الخطوط المائلة العكسية تحت Windows) ، والتي يمكنك تمريرها إلى أي وظيفة تأخذ ملفًا
المسار كسلسلة:

>>> p = PurePath ('/ الخ')
>>> شارع (ع)
'/ الخ'
>>> p = PureWindowsPath ('c: / Program Files')
>>> شارع (ع)
'c: \\ Program Files'

وبالمثل ، يدعو بايت على المسار يعطي مسار نظام الملفات الخام ككائن بايت ، مثل
المشفرة بواسطة os.fsencode:

>>> بايت (p)
b'/ الخ'

الوصول فرد أجزاء
للوصول إلى "الأجزاء" الفردية (مكونات) المسار ، استخدم الخاصية التالية:

PurePath. الأجزاء
مجموعة تتيح الوصول إلى مكونات المسار المختلفة:

>>> p = PurePath ('/ usr / bin / python3')
>>> أجزاء ص
('/'، 'usr'، 'bin'، 'python3')

>>> p = PureWindowsPath ('c: / Program Files / PSF')
>>> أجزاء ص
('c: \\'، 'Program Files'، 'PSF')

(لاحظ كيف يتم إعادة تجميع محرك الأقراص والجذر المحلي في جزء واحد)

طرق HAS
توفر المسارات النقية الطرق والخصائص التالية:

PurePath.drive
سلسلة تمثل حرف محرك الأقراص أو الاسم ، إن وجد:

>>> محرك PureWindowsPath ('c: / Program Files /')
"ج:"
>>> محرك PureWindowsPath ('/ Program Files /')
''
>>> PurePosixPath ('/ الخ').يقود
''

تعتبر مشاركات UNC أيضًا محركات أقراص:

>>> PureWindowsPath ('// host / share / foo.txt'). محرك الأقراص
"\\\\ host \\ share"

PurePath.root
سلسلة تمثل الجذر (المحلي أو العام) ، إن وجد:

>>> PureWindowsPath ('c: / Program Files /'). root
"\\"
>>> PureWindowsPath ('c: Program Files /'). root
''
>>> PurePosixPath ('/ الخ').جذر
'/'

دائمًا ما يكون لأسهم UNC جذر:

>>> PureWindowsPath ("// host / share"). root
"\\"

بيور باث
تسلسل محرك الأقراص والجذر:

>>> PureWindowsPath ('c: / Program Files /')
"ج: \\"
>>> PureWindowsPath ('c: Program Files /')
"ج:"
>>> PurePosixPath ('/ الخ').مِرسَاة
'/'
>>> PureWindowsPath ("// host / share")
'\\\\ host \\ share \\'

بيور باث
تسلسل ثابت يوفر الوصول إلى أسلاف المسار المنطقية:

>>> p = PureWindowsPath ('c: /foo/bar/setup.py')
>>> الآباء ص [0]
PureWindowsPath ('c: / foo / bar')
>>> الآباء ص [1]
PureWindowsPath ('c: / foo')
>>> الآباء ص [2]
PureWindowsPath ('c: /')

PurePath. الوالد
الأصل المنطقي للمسار:

>>> p = PurePosixPath ('/ a / b / c / d')
>>> ص الوالدين
PurePosixPath ('/ a / b / c')

لا يمكنك تجاوز نقطة ارتساء أو مسار فارغ:

>>> p = PurePosixPath ('/')
>>> ص الوالدين
PurePosixPath ('/')
>>> p = PurePosixPath (".")
>>> ص الوالدين
PurePosixPath (".")

NOTE:
هذه عملية معجمية بحتة ، ومن هنا يأتي السلوك التالي:

>>> p = PurePosixPath ('foo / ..')
>>> ص الوالدين
PurePosixPath ("foo")

إذا كنت ترغب في السير في مسار نظام ملفات تعسفي لأعلى ، فمن المستحسن أن تقوم بذلك
اول مكالمة حل المسار () وذلك لحل الروابط الرمزية والقضاء عليها ".."
المكونات.

PurePath.name
سلسلة تمثل مكون المسار النهائي ، باستثناء محرك الأقراص والجذر ، إذا
أي:

>>> PurePosixPath ('my / library / setup.py'). الاسم
"setup.py"

لا يتم اعتبار أسماء محرك أقراص UNC:

>>> PureWindowsPath ('// some / share / setup.py'). name
"setup.py"
>>> PureWindowsPath ("// بعض / مشاركة"). name
''

PurePath.suffix
امتداد الملف للمكون النهائي إن وجد:

>>> PurePosixPath ('my / library / setup.py'). اللاحقة
'.السنة التحضيرية'
>>> PurePosixPath ('my / library.tar.gz'). اللاحقة
".gz"
>>> PurePosixPath ('my / library'). لاحقة
''

PurePath.suffixes
قائمة بامتدادات ملفات المسار:

>>> PurePosixPath ('my / library.tar.gar'). اللواحق
['.tar'، '.gar']
>>> PurePosixPath ('my / library.tar.gz'). اللواحق
['.tar'، '.gz']
>>> PurePosixPath ('my / library'). اللواحق
[]

PurePath.stem
مكون المسار النهائي ، بدون لاحقته:

>>> PurePosixPath ('my / library.tar.gz')
"library.tar"
>>> PurePosixPath ('my / library.tar')
'مكتبة'
>>> PurePosixPath ('my / library')
'مكتبة'

PurePath.as_posix ()
إرجاع تمثيل سلسلة للمسار بشرطة مائلة للأمام (/):

>>> p = PureWindowsPath ('c: \\ windows')
>>> شارع (ع)
"c: \\ windows"
>>> p.as_posix ()
"ج: / windows"

PurePath.as_uri ()
تمثل المسار كملف ملف يكره. خطأ القيمة يتم رفعه إذا لم يكن المسار مطلقًا.

>>> p = PurePosixPath ('/ الخ / باسود')
>>> p.as_uri ()
'ملف:/// الخ / باسود'
>>> p = PureWindowsPath ('c: / Windows')
>>> p.as_uri ()
"ملف: /// c: / Windows"

PurePath.is_absolute ()
العودة ما إذا كان المسار مطلقًا أم لا. يعتبر المسار مطلقًا إذا كان
له جذر ومحرك (إذا سمحت النكهة):

>>> PurePosixPath ('/ a / b'). is_absolute ()
صواب
>>> PurePosixPath ('أ / ب'). is_absolute ()
خطأ

>>> PureWindowsPath ('c: / a / b'). is_absolute ()
صواب
>>> PureWindowsPath ('/ a / b'). is_absolute ()
خطأ
>>> PureWindowsPath ('c:'). is_absolute ()
خطأ
>>> PureWindowsPath ("// بعض / مشاركة"). is_absolute ()
صواب

PurePath.is_reserved ()
بدافع PureWindowsPath، إرجاع صواب إذا تم اعتبار المسار محجوزًا تحت Windows ،
خطأ خلاف ذلك. مع PurePosixPath, خطأ يتم إرجاعه دائمًا.

>>> PureWindowsPath ('nul'). is_reserved ()
صواب
>>> PurePosixPath ('nul'). is_reserved ()
خطأ

يمكن أن تفشل استدعاءات نظام الملفات على المسارات المحجوزة بشكل غامض أو تكون غير مقصودة
الآثار.

PurePath.joinpath (* أخرى)
استدعاء هذه الطريقة يكافئ دمج المسار مع كل من آخر
الحجج بدورها:

>>> PurePosixPath ('/ الخ') .joinpath (' passwd ')
PurePosixPath ('/ الخ / باسود')
>>> PurePosixPath ('/ الخ') .joinpath (PurePosixPath (' passwd '))
PurePosixPath ('/ الخ / باسود')
>>> PurePosixPath ('/ الخ') .joinpath (' init.d '،' apache2 ')
PurePosixPath ('/etc/init.d/apachexnumx')
>>> PureWindowsPath ('c:'). Joinpath ('/ Program Files')
PureWindowsPath ('c: / Program Files')

PurePath.match (نمط)
قم بمطابقة هذا المسار مع نمط نمط الكرة الأرضية المقدم. يعود صواب إذا كانت مطابقة
ناجح، خطأ غير ذلك.

If النمط نسبي ، يمكن أن يكون المسار نسبيًا أو مطلقًا ومطابقًا
يتم من اليمين:

>>> PurePath ('a / b.py'). match ('*. py')
صواب
>>> PurePath ('/ a / b / c.py'). match ('b / *. py')
صواب
>>> PurePath ('/ a / b / c.py'). match ('a / *. py')
خطأ

If النمط مطلق ، يجب أن يكون المسار مطلقًا ، ويجب أن يتطابق المسار بالكامل:

>>> PurePath ('/ a.py'). match ('/ *. py')
صواب
>>> PurePath ('a / b.py'). match ('/ *. py')
خطأ

كما هو الحال مع الطرق الأخرى ، يتم ملاحظة حساسية حالة الأحرف:

>>> PureWindowsPath ('b.py'). match ('*. PY')
صواب

PurePath.relative_to (* أخرى)
احسب نسخة من هذا المسار بالنسبة إلى المسار الذي يمثله آخر. إذا كان كذلك
مستحيل ، تم رفع ValueError:

>>> p = PurePosixPath ('/ الخ / باسود')
>>> ص نسبي إلى ('/')
PurePosixPath ("etc / passwd")
>>> ص نسبي إلى ('/ الخ')
PurePosixPath ("passwd")
>>> ص نسبي إلى ('/ البيرة')
تتبع (آخر مكالمة أخيرة):
ملف " "، السطر 1 ، في
ملف "pathlib.py" ، السطر 694 ، في نسبي
.format (str (self)، str (تنسيق)))
ValueError: '/ الخ / باسود"لا يبدأ بـ"/ البيرة'

PurePath.with_name (الاسم)
قم بإرجاع مسار جديد بامتداد الاسم تغير. إذا لم يكن للمسار الأصلي اسم ،
تم رفع ValueError:

>>> p = PureWindowsPath ('c: /Downloads/pathlib.tar.gz')
>>> p.with_name ('setup.py')
PureWindowsPath ('c: /Downloads/setup.py')
>>> p = PureWindowsPath ('c: /')
>>> p.with_name ('setup.py')
تتبع (آخر مكالمة أخيرة):
ملف " "، السطر 1 ، في
ملف "/home/antoine/cpython/default/Lib/pathlib.py" ، السطر 751 ، في with_name
رفع قيمة الخطأ ("٪ r له اسم فارغ"٪ (ذاتي ،))
ValueError: يحتوي PureWindowsPath ('c: /') على اسم فارغ

PurePath.with_suffix (لاحقة)
قم بإرجاع مسار جديد بامتداد لاحقة تغير. إذا كان المسار الأصلي لا يحتوي على ملف
اللاحقة الجديدة لاحقة يتم إلحاقه بدلاً من ذلك:

>>> p = PureWindowsPath ('c: /Downloads/pathlib.tar.gz')
>>> p.with_suffix ('. bz2')
PureWindowsPath ('c: /Downloads/pathlib.tar.bz2')
>>> p = PureWindowsPath ('README')
>>> p.with_suffix ('. TXT')
PureWindowsPath ("README.txt")

الخرسانة مسارات


المسارات الخرسانية هي فئات فرعية من فئات المسار الخالص. بالإضافة إلى العمليات
التي يوفرها الأخير ، فإنها توفر أيضًا طرقًا لإجراء استدعاءات النظام على كائنات المسار.
هناك ثلاث طرق لإنشاء مثيل لمسارات محددة:

فئة pathlib.Path (* مسارات)
فئة فرعية من PurePath، تمثل هذه الفئة مسارات محددة لمسار النظام
النكهة (إنشاء مثيل لها يخلق إما أ PosixPath أو WindowsPath):

>>> المسار ('setup.py')
PosixPath ('setup.py')

المسارات تم تحديده بالمثل PurePath.

فئة pathlib.PosixPath (* مسارات)
فئة فرعية من مسار PurePosixPath، تمثل هذه الفئة ملموسة بخلاف Windows
مسارات نظام الملفات:

>>> PosixPath ('/ الخ')
PosixPath ('/ الخ')

المسارات تم تحديده بالمثل PurePath.

فئة pathlib.WindowsPath (* pathsegments)
فئة فرعية من مسار PureWindowsPath، تمثل هذه الفئة نوافذ ملموسة
مسارات نظام الملفات:

>>> WindowsPath ('c: / Program Files /')
WindowsPath ('c: / ملفات البرنامج')

المسارات تم تحديده بالمثل PurePath.

يمكنك فقط إنشاء نسخة طبق الأصل من نكهة الفئة التي تتوافق مع نظامك (يسمح
قد تؤدي مكالمات النظام على نكهات المسار غير المتوافقة إلى حدوث أخطاء أو فشل في ملف
طلب):

>>> استيراد نظام التشغيل
>>> os.name
"posix"
>>> المسار ('setup.py')
PosixPath ('setup.py')
>>> PosixPath ('setup.py')
PosixPath ('setup.py')
>>> WindowsPath ('setup.py')
تتبع (آخر مكالمة أخيرة):
ملف " "، السطر 1 ، في
ملف "pathlib.py" ، السطر 798 ، في __new__
٪ (cls .__ name__،))
NotImplementedError: لا يمكن إنشاء مثيل لـ "WindowsPath" على نظامك

طرق
توفر المسارات الخرسانية الطرق التالية بالإضافة إلى طرق المسارات النقية. العديد من
هذه الأساليب يمكن أن ترفع خطأ في نظام التشغيل إذا فشل استدعاء النظام (على سبيل المثال لأن المسار
غير موجود):

طريقة الفصل Path.cwd ()
قم بإرجاع كائن مسار جديد يمثل الدليل الحالي (كما تم إرجاعه بواسطة
os.getcwd ()):

>>> Path.cwd ()
PosixPath ('/ home / antoine / pathlib')

Path.stat ()
قم بإرجاع معلومات حول هذا المسار (بشكل مشابه لـ os.stat ()). تبدو النتيجة
يصل في كل استدعاء لهذه الطريقة.

>>> ع = المسار ('setup.py')
>>> p.stat (). st_size
956
>>> p.stat (). st_mtime
1327883547.852554

المسار(وضع)
قم بتغيير وضع الملف والأذونات ، مثل os.chmod ():

>>> ع = المسار ('setup.py')
>>> p.stat (). st_mode
33277
>>> ص. chmod(0o444)
>>> p.stat (). st_mode
33060

المسار موجود ()
ما إذا كان المسار يشير إلى ملف أو دليل موجود:

>>> من استيراد pathlib *
>>> المسار ("."). موجود ()
صواب
>>> المسار ('setup.py'). موجود ()
صواب
>>> المسار ('/ الخ'). موجود ()
صواب
>>> المسار ("ملف غير موجود"). موجود ()
خطأ

Path.glob (نمط)
الكرة الأرضية المعطاة النمط في الدليل الذي يمثله هذا المسار ، مما ينتج عنه كل شيء
مطابقة الملفات (من أي نوع):

>>> مرتبة (المسار ('.'). glob ('*. py'))
[PosixPath ('pathlib.py') ، PosixPath ('setup.py') ، PosixPath ('test_pathlib.py')]
>>> مرتبة (المسار ('.'). glob ('* / *. py'))
[PosixPath ('docs / conf.py')]

ال "**"النمط يعني" هذا الدليل وجميع الأدلة الفرعية ، بشكل متكرر "
وبعبارة أخرى ، فإنه يتيح اللقطات المتتالية:

>>> مرتبة (المسار ('.'). glob ('** / *. py'))
[PosixPath ('build / lib / pathlib.py') ،
PosixPath ('docs / conf.py') ،
PosixPath ('pathlib.py') ،
PosixPath ('setup.py') ،
PosixPath ('test_pathlib.py')]

NOTE:
باستخدام "**"النمط في أشجار الدليل الكبيرة قد يستهلك كمية مفرطة
من الزمن.

Path.group ()
قم بإرجاع اسم المجموعة المالكة للملف. خطأ رئيسي يتم رفعه إذا كان gid للملف
غير موجود في قاعدة بيانات النظام.

Path.is_dir ()
الإرجاع صواب إذا كان المسار يشير إلى دليل (أو ارتباط رمزي يشير إلى ملف
الدليل)، خطأ إذا كان يشير إلى نوع آخر من الملفات.

خطأ يتم إرجاعه أيضًا إذا كان المسار غير موجود أو إذا كان ارتباط رمزي معطل ؛ آخر
يتم نشر الأخطاء (مثل أخطاء الأذونات).

Path.is_file ()
الإرجاع صواب إذا كان المسار يشير إلى ملف عادي (أو ارتباط رمزي يشير إلى ملف
ملف عادي) ، خطأ إذا كان يشير إلى نوع آخر من الملفات.

خطأ يتم إرجاعه أيضًا إذا كان المسار غير موجود أو إذا كان ارتباط رمزي معطل ؛ آخر
يتم نشر الأخطاء (مثل أخطاء الأذونات).

المسار. is_symlink ()
الإرجاع صواب إذا كان المسار يشير إلى ارتباط رمزي ، خطأ غير ذلك.

خطأ يتم إرجاعه أيضًا إذا كان المسار غير موجود ؛ أخطاء أخرى (مثل إذن
الأخطاء).

Path.is_socket ()
الإرجاع صواب إذا كان المسار يشير إلى مقبس Unix (أو ارتباط رمزي يشير إلى ملف
مقبس يونكس) ، خطأ إذا كان يشير إلى نوع آخر من الملفات.

خطأ يتم إرجاعه أيضًا إذا كان المسار غير موجود أو إذا كان ارتباط رمزي معطل ؛ آخر
يتم نشر الأخطاء (مثل أخطاء الأذونات).

Path.is_fifo ()
الإرجاع صواب إذا كان المسار يشير إلى FIFO (أو ارتباط رمزي يشير إلى FIFO) ،
خطأ إذا كان يشير إلى نوع آخر من الملفات.

خطأ يتم إرجاعه أيضًا إذا كان المسار غير موجود أو إذا كان ارتباط رمزي معطل ؛ آخر
يتم نشر الأخطاء (مثل أخطاء الأذونات).

Path.is_block_device ()
الإرجاع صواب إذا كان المسار يشير إلى جهاز كتلة (أو ارتباط رمزي يشير إلى ملف
جهاز كتلة) ، خطأ إذا كان يشير إلى نوع آخر من الملفات.

خطأ يتم إرجاعه أيضًا إذا كان المسار غير موجود أو إذا كان ارتباط رمزي معطل ؛ آخر
يتم نشر الأخطاء (مثل أخطاء الأذونات).

Path.is_char_device ()
الإرجاع صواب إذا كان المسار يشير إلى جهاز حرف (أو ارتباط رمزي يشير
إلى جهاز الشخصية) ، خطأ إذا كان يشير إلى نوع آخر من الملفات.

خطأ يتم إرجاعه أيضًا إذا كان المسار غير موجود أو إذا كان ارتباط رمزي معطل ؛ آخر
يتم نشر الأخطاء (مثل أخطاء الأذونات).

Path.iterdir ()
عندما يشير المسار إلى دليل ، قم بإعطاء كائنات المسار لمحتويات الدليل:

>>> ع = المسار ("مستندات")
>>> للطفل في p.iterdir (): child

PosixPath ("docs / conf.py")
PosixPath ("docs / _templates")
PosixPath ("docs / make.bat")
PosixPath ("docs / index.rst")
PosixPath ('docs / _build')
PosixPath ("docs / _static")
PosixPath ("docs / Makefile")

المسار(وضع)
اعجاب Path.chmod () ولكن ، إذا كان المسار يشير إلى ارتباط رمزي ، فإن الارتباط الرمزي
تم تغيير الوضع بدلاً من هدفه.

Path.lstat ()
اعجاب Path.stat () ولكن ، إذا كان المسار يشير إلى ارتباط رمزي ، فقم بإرجاع الرمز
معلومات الارتباط بدلاً من المعلومات المستهدفة.

Path.mkdir (الوضع = 0o777 ، الآباء = خطأ)
قم بإنشاء دليل جديد في هذا المسار المحدد. لو طريقة يتم تقديمه ، يتم دمجه مع
العملية' Umask القيمة لتحديد وضع الملف وعلامات الوصول. إذا كان المسار
موجود أصلا، خطأ في نظام التشغيل تربى.

If الآباء هذا صحيح ، يتم إنشاء أي آباء مفقودين لهذا المسار حسب الحاجة ؛ هم
يتم إنشاؤها باستخدام الأذونات الافتراضية دون أخذ طريقة داخل الحساب
(تقليد POSIX مكدير -p أمر).

If الآباء هو خطأ (الافتراضي) ، يرفع الوالد المفقود خطأ في نظام التشغيل.

Path.open (الوضع = 'r' ، التخزين المؤقت = -1 ، ترميز = لا شيء ، الأخطاء = لا شيء ، سطر جديد = لا شيء)
افتح الملف الذي يشير إليه المسار ، مثل ملف افتح() تعمل الوظيفة:

>>> ع = المسار ('setup.py')
>>> مع p.open () كـ f:
... f.readline ()

'#!/ البيرة / بن / إنف python3 \ n '

Path.owner ()
قم بإرجاع اسم المستخدم صاحب الملف. خطأ رئيسي يتم رفعه إذا كان معرّف الملف
غير موجود في قاعدة بيانات النظام.

Path.rename (الهدف)
أعد تسمية هذا الملف أو الدليل إلى ملف الهدف. الهدف يمكن أن يكون إما سلسلة
أو كائن مسار آخر:

>>> p = المسار ('foo')
>>> p.open ("w"). اكتب ("بعض النص")
9
>>> الهدف = المسار ('شريط')
>>> p.rename (الهدف)
>>> target.open (). read ()
'بعض النصوص'

Path.replace (الهدف)
أعد تسمية هذا الملف أو الدليل إلى ملف الهدف. إذا الهدف يشير إلى وجود
ملف أو دليل ، سيتم استبداله دون قيد أو شرط.

هذه الطريقة متاحة فقط مع Python 3.3 ؛ سوف ترفع NotImplementedError. خطأ on
إصدارات Python السابقة.

حل المسار ()
اجعل المسار مطلقًا ، وحل أي روابط رمزية. تم إرجاع كائن مسار جديد:

>>> ع = المسار ()
>>> ص
PosixPath (".")
>>> ص حل ()
PosixPath ('/ home / antoine / pathlib')

".." يتم أيضًا حذف المكونات (هذه هي الطريقة الوحيدة للقيام بذلك):

>>> p = المسار ('docs /../ setup.py')
>>> ص حل ()
PosixPath ('/ home / antoine / pathlib / setup.py')

إذا كان المسار غير موجود ، فإن ملف خطأ في نظام التشغيل تربى. إذا كانت الحلقة اللانهائية
التي واجهتها على طول مسار القرار ، خطا وقت التشغيل تربى.

Path.rglob (نمط)
هذا مثل النداء غلوب () مع "**"أضيفت أمام المعطى النمط:

>>> مرتبة (المسار (). rglob ("*. py"))
[PosixPath ('build / lib / pathlib.py') ،
PosixPath ('docs / conf.py') ،
PosixPath ('pathlib.py') ،
PosixPath ('setup.py') ،
PosixPath ('test_pathlib.py')]

Path.rmdir ()
قم بإزالة هذا الدليل. يجب أن يكون الدليل فارغًا.

Path.symlink_to (الهدف ، target_is_directory = خطأ)
اجعل هذا المسار رابطًا رمزيًا لـ الهدف. تحت النوافذ ، target_is_directory يجب
كن صحيحًا (افتراضي خطأ) إذا كان هدف الرابط عبارة عن دليل. ضمن POSIX ،
target_is_directoryتم تجاهل قيمة.

>>> ع = المسار ('mylink')
>>> p.symlink_to ('setup.py')
>>> ص حل ()
PosixPath ('/ home / antoine / pathlib / setup.py')
>>> p.stat (). st_size
956
>>> p.lstat (). st_size
8

NOTE:
ترتيب الوسائط (الرابط ، الهدف) هو عكس os.symlink ()الصورة.

Path.touch (الوضع = 0o777 ، موجود = صحيح)
قم بإنشاء ملف في هذا المسار المحدد. لو طريقة يتم تقديمه ، يتم دمجه مع
عملية' Umask القيمة لتحديد وضع الملف وعلامات الوصول. إذا كان الملف
موجودة بالفعل ، تنجح الوظيفة إذا موجود_ طيب صحيح (وتعديله
يتم تحديث الوقت إلى الوقت الحالي) ، وإلا خطأ في نظام التشغيل تربى.

Path.unlink ()
قم بإزالة هذا الملف أو الارتباط الرمزي. إذا كان المسار يشير إلى دليل ، فاستخدم
Path.rmdir () بدلا من ذلك.

استخدم pathlib عبر الإنترنت باستخدام خدمات onworks.net


خوادم ومحطات عمل مجانية

قم بتنزيل تطبيقات Windows و Linux

أوامر لينكس

Ad