التابع ConfigParser.read()‎‎ في بايثون

من موسوعة حسوب

يحاول التابع قراءة وتفسير مكرِّر iterable من أسماء الملفات المعطاة.

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

read(filenames, encoding=None)

المعاملات

‎filenames

سلسلة نصية أو كائن bytes أو كائن شبيه بالملفات، ويعامل كاسم ملف واحد. إن لم يتمكن التابع من فتح الملف المحدد في المعامل filenames فإن التابع سيتجاهل ذلك الملف. صُمّم هذا التابع بطريقة تتيح للمسختدم تحديد مكرّر يتضمن المواقع المحتملة لملفات الإعدادات (مثل: المجلد الحالي، المجلد الرئيسي للمستخدم، وبعض مجلدات النظام) وسيقرأ التابع كل ملفات الإعدادات التي يعثر عليها في هذه المواقع.

ملاحظات:

  • أضيف المعامل encoding في الإصدار 3.2 من بايثون. كانت جميع الملفات تُقرأ في الإصدارات السابقة باستخدام الترميز الافتراضي للدالة open()‎.
  • أصبح بالإمكان استخدام الكائنات الشبيهة بالمسارات كقيمة للمعامل filenames في الإصدار 3.6.1 من بايثون.
  • أصبح بالإمكان استخدام كائن bytes كقيمة للمعامل filenames في الإصدار 3.7 من بايثون.

القيمة المعادة

يعيد التابع قائمة بأسماء الملفات التي جرى تفسيرها بنجاح.

أمثلة

يبين المثال التالي طريقة عمل التابع:

>>> import configparser
>>> config = configparser.ConfigParser()
>>> config.read('config.cfg')
['config.cfg']

إن لم يكن أي ملف من الملفات المعطاة موجودًا، فإن نسخة الصنف ConfigParser ستتضمّن مجموعة بيانات dataset فارغة. إن كان التطبيق بحاجة إلى تحميل بعض القيم من ملف الإعدادات عند تشغيل التطبيق لأول مرّة، فيجب تحميل الملف أو الملفات المطلوبة باستخدام التابع read_file()‎ قبل استدعاء التابع read()‎ على الملفات الأخرى:

import configparser, os

config = configparser.ConfigParser()
config.read_file(open('defaults.cfg'))
config.read(['site.cfg', os.path.expanduser('~/.myapp.cfg')],
            encoding='cp1250')

انظر أيضًا

  • التابع read_file()‎: يقرأ التابع ويفسّر الإعدادات من المكرِّر المعطى.
  • التابع read_string()‎: يفسّر التابع الإعدادات من سلسلة نصية.
  • التابع read_dict()‎: يحمّل التابع الإعدادات من أي كائن يوفّر تابعًا شبيهًا بالتابع items()‎ في كائنات dict.

مصادر