الفرق بين المراجعتين لصفحة: «Python/pathlib/Path/group»
طلا ملخص تعديل |
طلا ملخص تعديل |
||
(1 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة) | |||
سطر 1: | سطر 1: | ||
==التابع <code> | ==التابع <code>Path.group</code> في بايثون== | ||
يعيد هذا التابع اسم المجموعة التي ينتمي لها الملف، ويرمي | يعيد هذا التابع اسم المجموعة التي ينتمي لها الملف، ويرمي الخطأ <code>[[Python/Examples#.D8.A7.D9.84.D8.A7.D8.B3.D8.AA.D8.AB.D9.86.D8.A7.D8.A1 KeyError.C2.A0|KeyError]]</code> إذا كان معرف المجموعة <code>[https://whatis.techtarget.com/definition/GID-group-ID-or-global-index-file gid]</code> الخاص بالملف غير موجود في قاعدة بيانات النظام. | ||
ملاحظة: هذا التابع لا يعمل على نظام ويندوز، ويرمي بالخطأ <code>NotImplementedError</code> في حال استخدامه في نظام ويندوز ، حيث نجد تعريف التابع في [https://github.com/python/cpython/blob/3.7/Lib/pathlib.py الشيفرة المصدرية] كما يلي:<syntaxhighlight lang="python3"> | |||
def group(self): | |||
raise NotImplementedError("Path.group() is unsupported on this system") | |||
</syntaxhighlight>وهو يعتمد على نتيجة استدعاء التابع [[Python/pathlib/Path/stat|stat]] لتحديد معرف المجموعة، ثم يستخدم التابع [http://pubs.opengroup.org/onlinepubs/007904975/functions/getgrgid.html getgrgid] من الوحدة [http://pubs.opengroup.org/onlinepubs/007904975/basedefs/grp.h.html grp] للحصول على المعلومات الخاصة بالمجموعة.<syntaxhighlight lang="python3"> | |||
>>>import pathlib | |||
>>>pathlib.Path('.').stat().st_gid | |||
1000 | |||
>>>import grp#موجودة فقط في يونكس | |||
>>>grp.getgrgid(pathlib.Path('.').stat().st_gid) | |||
grp.struct_group(gr_name='runner', gr_passwd='x', gr_gid=1000, gr_mem=[]) | |||
>>>grp.getgrgid(pathlib.Path('.').stat().st_gid).gr_name | |||
'runner' | |||
</syntaxhighlight> | |||
==البنية العامة== | ==البنية العامة== | ||
يُستخدم التابع ببساطة عن طريق استدعائه في نظام يونكس. | |||
==المعاملات== | ==المعاملات== | ||
بدون معاملات | بدون معاملات | ||
==القيمة المعادة== | ==القيمة المعادة== | ||
يعيد هذا التابع اسم المجموعة التي ينتمي لها الملف، ويرمي بالخطأ <code>KeyError</code> إذا كان معرف المجموعة <code>gid</code> الخاص بالملف غير موجود في قاعدة بيانات النظام. | يعيد هذا التابع اسم المجموعة التي ينتمي لها الملف، ويرمي بالخطأ <code>[[Python/Examples#.D8.A7.D9.84.D8.A7.D8.B3.D8.AA.D8.AB.D9.86.D8.A7.D8.A1 KeyError.C2.A0|KeyError]]</code> إذا كان معرف المجموعة <code>[https://whatis.techtarget.com/definition/GID-group-ID-or-global-index-file gid]</code> الخاص بالملف غير موجود في قاعدة بيانات النظام. | ||
==أمثلة== | ==أمثلة== | ||
<syntaxhighlight lang="python3"> | |||
>>>from pathlib import Path | |||
>>>p=Path() | |||
>>>p | |||
PosixPath('.') | |||
>>>print(p.group()) | |||
runner | |||
</syntaxhighlight> | |||
==انظر أيضًا== | ==انظر أيضًا== | ||
التابع [[Python/pathlib/Path/stat|stat]] للحصول على معلومات الملف. | |||
==مصادر== | |||
<span> </span> | <span> </span> | ||
[https://docs.python.org/3/library/pathlib.html قسم الوحدة pathlib في توثيق بايثون الرسمي.] |
المراجعة الحالية بتاريخ 02:07، 28 أغسطس 2018
التابع Path.group
في بايثون
يعيد هذا التابع اسم المجموعة التي ينتمي لها الملف، ويرمي الخطأ KeyError
إذا كان معرف المجموعة gid
الخاص بالملف غير موجود في قاعدة بيانات النظام.
ملاحظة: هذا التابع لا يعمل على نظام ويندوز، ويرمي بالخطأ NotImplementedError
في حال استخدامه في نظام ويندوز ، حيث نجد تعريف التابع في الشيفرة المصدرية كما يلي:
def group(self):
raise NotImplementedError("Path.group() is unsupported on this system")
وهو يعتمد على نتيجة استدعاء التابع stat لتحديد معرف المجموعة، ثم يستخدم التابع getgrgid من الوحدة grp للحصول على المعلومات الخاصة بالمجموعة.
>>>import pathlib
>>>pathlib.Path('.').stat().st_gid
1000
>>>import grp#موجودة فقط في يونكس
>>>grp.getgrgid(pathlib.Path('.').stat().st_gid)
grp.struct_group(gr_name='runner', gr_passwd='x', gr_gid=1000, gr_mem=[])
>>>grp.getgrgid(pathlib.Path('.').stat().st_gid).gr_name
'runner'
البنية العامة
يُستخدم التابع ببساطة عن طريق استدعائه في نظام يونكس.
المعاملات
بدون معاملات
القيمة المعادة
يعيد هذا التابع اسم المجموعة التي ينتمي لها الملف، ويرمي بالخطأ KeyError
إذا كان معرف المجموعة gid
الخاص بالملف غير موجود في قاعدة بيانات النظام.
أمثلة
>>>from pathlib import Path
>>>p=Path()
>>>p
PosixPath('.')
>>>print(p.group())
runner
انظر أيضًا
التابع stat للحصول على معلومات الملف.
مصادر