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

من موسوعة حسوب
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:الصنف <code>csv.DictReader()‎‎</code> في بايثون}}</noinclude> تنشئ الدالة البانية لهذا الصنف كائ...'
 
 
(1 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE:الصنف <code>csv.DictReader()‎‎</code> في بايثون}}</noinclude>
<noinclude>{{DISPLAYTITLE:الصنف <code>csv.DictReader()‎‎</code> في بايثون}}</noinclude>
تنشئ الدالة البانية لهذا الصنف كائنًا يعمل كقارئ عادي ولكنّه يربط المعلومات في كل سطر بقاموس مرتّب OrderedDict تحدّد مفاتيحه بواسطة المعامل الاختياري fieldnames.
تنشئ الدالة البانية لهذا الصنف كائنًا يعمل كقارئ عادي ولكنّه يربط المعلومات في كل سطر بقاموس مرتّب <code>[[Python/OrderedDict|OrderedDict]]</code> تحدّد مفاتيحه بواسطة المعامل الاختياري <code>fieldnames</code>.


== البنية العامة ==
== البنية العامة ==


<syntaxhighlight lang="python3">
<syntaxhighlight lang="python3">
class csv.DictReader(f, fieldnames=None, restkey=None, restval=None, dialect='excel', *args, **kwds)
csv.DictReader(f, fieldnames=None, restkey=None, restval=None, dialect='excel', *args, **kwds)
</syntaxhighlight>
</syntaxhighlight>
 
== المعاملات ==
== ‎المعاملات ==
‎f
 
=== <code>‎f</code> ===
ملف csv المراد قرائته.
ملف csv المراد قرائته.


fieldnames
=== <code>fieldnames</code> ===
معامل اختياري، وهو عبارة عن تسلسل. إن لم يُستخدم هذا المعامل فإنّ القيم الموجودة في السطر الأول من الملف المفتوح ستُستخدم كأسماء للحقول. وبصرف النظر عن طريقة تحديد أسماء الحقول فإنّ القاموس المرتّب سيحافظ دائمًا على ترتيبها الأصلي.
معامل اختياري، وهو عبارة عن تسلسل. إن لم يُستخدم هذا المعامل فإنّ القيم الموجودة في السطر الأول من الملف المفتوح ستُستخدم كأسماء للحقول. وبصرف النظر عن طريقة تحديد أسماء الحقول فإنّ [[Python/OrderedDict|القاموس المرتّب]] سيحافظ دائمًا على ترتيبها الأصلي.


إن تضمّن سطرٌ حقولًا أكثر من أسماء الحقول، توضع البيانات المتبقّية في قائمة وتُخزّن تحت حقل يحمل الاسم المحدّد بواسطة المعامل restkey (والذي يأخذ القيمة الافتراضية None).
=== <code>restkey</code> ===
إن تضمّن سطرٌ حقولًا أكثر من أسماء الحقول، توضع البيانات المتبقّية في قائمة وتُخزّن تحت حقل يحمل الاسم المحدّد بواسطة المعامل <code>restkey</code> (والذي يأخذ القيمة الافتراضية <code>None</code>).


إن امتلك سطر غير فارغ حقولًا أقلّ من اسماء الحقول، توضع القيمة None محلّ القيم المفقودة.
إن امتلك سطر غير فارغ حقولًا أقلّ من اسماء الحقول، توضع القيمة <code>None</code> محلّ القيم المفقودة.


تمرّر بقية المعاملات الاختيارية أو المفتاحية إلى نسخة كائن القراءة الضمني.
تمرّر بقية المعاملات الاختيارية أو المفتاحية إلى نسخة [[Python/csv/reader|كائن القراءة]] الضمني.


ملاحظة: أصبحت الأسطر المعادة من نوع OrderedDict في الإصدار 3.6 من بايثون.
ملاحظة: أصبحت الأسطر المعادة من نوع [[Python/OrderedDict|OrderedDict]] في الإصدار 3.6 من بايثون.


== أمثلة ==
== أمثلة ==
سطر 43: سطر 45:


== انظر أيضًا ==
== انظر أيضًا ==
* الصنف DictWriter.
* الدالة <code>[[Python/csv/reader|csv.reader()‎]]</code>: تعيد الدالة كائن قراءة مهمّته هي المرور على جميع الأسطر في ملف csv المعطى.
* الصنف <code>[[Python/DictWriter|DictWriter]]</code>.
== مصادر ==
== مصادر ==
[https://docs.python.org/3/library/csv.html#csv.DictReader صفحة CSV File Reading and Writing في توثيق بايثون الرسمي.]
[https://docs.python.org/3/library/csv.html#csv.DictReader صفحة CSV File Reading and Writing في توثيق بايثون الرسمي.]

المراجعة الحالية بتاريخ 21:00، 26 نوفمبر 2018

تنشئ الدالة البانية لهذا الصنف كائنًا يعمل كقارئ عادي ولكنّه يربط المعلومات في كل سطر بقاموس مرتّب OrderedDict تحدّد مفاتيحه بواسطة المعامل الاختياري fieldnames.

البنية العامة

csv.DictReader(f, fieldnames=None, restkey=None, restval=None, dialect='excel', *args, **kwds)

‎المعاملات

‎f

ملف csv المراد قرائته.

fieldnames

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

restkey

إن تضمّن سطرٌ حقولًا أكثر من أسماء الحقول، توضع البيانات المتبقّية في قائمة وتُخزّن تحت حقل يحمل الاسم المحدّد بواسطة المعامل restkey (والذي يأخذ القيمة الافتراضية None).

إن امتلك سطر غير فارغ حقولًا أقلّ من اسماء الحقول، توضع القيمة None محلّ القيم المفقودة.

تمرّر بقية المعاملات الاختيارية أو المفتاحية إلى نسخة كائن القراءة الضمني.

ملاحظة: أصبحت الأسطر المعادة من نوع OrderedDict في الإصدار 3.6 من بايثون.

أمثلة

يبين المثال التالي طريقة الاستفادة من كائنات القراءة:

>>> import csv
>>> with open('names.csv', newline='') as csvfile:
...     reader = csv.DictReader(csvfile)
...     for row in reader:
...         print(row['first_name'], row['last_name'])
...
Eric Idle
John Cleese

>>> print(row)
OrderedDict([('first_name', 'John'), ('last_name', 'Cleese')])

انظر أيضًا

  • الدالة csv.reader()‎: تعيد الدالة كائن قراءة مهمّته هي المرور على جميع الأسطر في ملف csv المعطى.
  • الصنف DictWriter.

مصادر

صفحة CSV File Reading and Writing في توثيق بايثون الرسمي.