الفرق بين المراجعتين لصفحة: «Python/pathlib/Path/group»

من موسوعة حسوب
< Python‏ | pathlib‏ | Path
أنشأ الصفحة ب'== التابع Path.cwd == يعيد كائن مسار جديدًا يمثّل المسار الحالي (بشكل مشابه للتابع os.getcwd)<syntaxhighlight lan...'
 
طلا ملخص تعديل
 
(2 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 1: سطر 1:
== التابع Path.cwd ==
==التابع <code>Path.group</code> في بايثون==
يعيد كائن مسار جديدًا يمثّل المسار الحالي (بشكل مشابه للتابع os.getcwd)<syntaxhighlight lang="python3">
يعيد هذا التابع اسم المجموعة التي ينتمي لها الملف، ويرمي الخطأ <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> الخاص بالملف غير موجود في قاعدة بيانات النظام.
>>> Path.cwd()


PosixPath('/home/antoine/pathlib')
ملاحظة: هذا التابع لا يعمل على نظام ويندوز، ويرمي بالخطأ <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=[])


</syntaxhighlight><span> </span>
>>>grp.getgrgid(pathlib.Path('.').stat().st_gid).gr_name
'runner'
</syntaxhighlight>
==البنية العامة==
يُستخدم التابع ببساطة عن طريق استدعائه في نظام يونكس.
==المعاملات==
بدون معاملات
==القيمة المعادة==
يعيد هذا التابع اسم المجموعة التي ينتمي لها الملف، ويرمي بالخطأ <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>
 
[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 للحصول على معلومات الملف.

مصادر

قسم الوحدة pathlib في توثيق بايثون الرسمي.