الفرق بين المراجعتين ل"Python/dbm.gnu/open"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE:الدالة <code>dbm.gnu.open()‎</code> في بايثون}}</noinclude>
 
<noinclude>{{DISPLAYTITLE:الدالة <code>dbm.gnu.open()‎</code> في بايثون}}</noinclude>
 
 
تفتح الدالة قاعدة بيانات gdbm وتعيد كائن <code>gdbm</code>.
 
تفتح الدالة قاعدة بيانات gdbm وتعيد كائن <code>gdbm</code>.
  
سطر 32: سطر 31:
 
|}
 
|}
  
 
+
يمكن كذلك إلحاق الحروف الإضافية التالية إلى المعامل flag للتحكم في طريقة فتح قاعدة البيانات:
 
+
{| class="wikitable"
ليست جميع الرايات صالحة للاستخدام مع جميع إصدارات gdbm. الثابت open_flags التابع لهذه الوحدة هو سلسلة نصية تتضمن محارف الرايات المدعومة، ويطلق الاستثناء error عند استخدام راية غير مدعومة.
+
!القيمة
 +
!المعنى
 +
|-
 +
|<code>'f'</code>
 +
|فتح قاعدة البيانات في الوضع السريع. لن تكون عمليات الكتابة إلى قاعدة البيانات متزامنة.
 +
|-
 +
|<code>'s'</code>
 +
|الوضع المتزامن. في هذا الوضع تُكتب التعديلات المجراة على قاعدة البيانات في ملف قاعدة البيانات مباشرة.
 +
|-
 +
|<code>'u'</code>
 +
|عدم قفل قاعدة البيانات.
 +
|}
 +
ليست جميع الرايات صالحة للاستخدام مع جميع إصدارات gdbm. الثابت <code>open_flags</code> التابع لهذه الوحدة هو [[Python/str|سلسلة نصية]] تتضمن محارف الرايات المدعومة، ويطلق الاستثناء <code>error</code> عند استخدام راية غير مدعومة.
  
 
=== <code>mode</code> ===
 
=== <code>mode</code> ===
سطر 41: سطر 52:
 
== القيمة المعادة ==
 
== القيمة المعادة ==
 
تفتح الدالة قاعدة بيانات gdbm وتعيد كائن <code>gdbm</code>.
 
تفتح الدالة قاعدة بيانات gdbm وتعيد كائن <code>gdbm</code>.
 
 
== أمثلة ==
 
 
في المثال التالي تضاف بعض أسماء الاستضافات والعناوين المرتبطة بها إلى قاعدة البيانات، ثم تطبع محتوياتها في المخرجات:
 
 
<syntaxhighlight lang="python3">
 
import dbm
 
 
# فتح قاعدة البيانات وإنشاؤها إن دعت الحاجة إلى ذلك
 
with dbm.open('cache', 'c') as db:
 
 
    # حفظ بعض البيانات
 
    db[b'hello'] = b'there'
 
    db['www.python.org'] = 'Python Website'
 
    db['www.cnn.com'] = 'Cable News Network'
 
 
    # لاحظ أن المفاتيح تعدّ بايتات الآن.‏
 
    assert db[b'www.python.org'] == b'Python Website'
 
    # لاحظ كيف أنّ القيم الآن أصبحت بايتات.
 
    assert db['www.cnn.com'] == b'Cable News Network'
 
 
    # يمكن استخدام التوابع المستخدمة مع القواميس.‏
 
    print(db.get('python.org', b'not present'))
 
 
    # يؤدي تخزين مفاتيح أو قيم غير نصية إلى إطلاق استثناء
 
    # TypeError غالبًا ما يكون من نوع
 
    db['www.yahoo.com'] = 4
 
 
# with تغلق قاعدة البيانات تلقائيًا عند الخروج من عبارة
 
</syntaxhighlight>
 
 
 
== انظر أيضًا ==
 
== انظر أيضًا ==
 
*الدالة <code>[[Python/dbm/open|dbm.open()‎]]</code> : تفتح الدالة قاعدة بيانات gdbm وتعيد كائن <code>gdbm</code>.
 
*الدالة <code>[[Python/dbm/open|dbm.open()‎]]</code> : تفتح الدالة قاعدة بيانات gdbm وتعيد كائن <code>gdbm</code>.

مراجعة 21:19، 20 سبتمبر 2018

تفتح الدالة قاعدة بيانات gdbm وتعيد كائن gdbm.

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

dbm.gnu.open(filename[, flag[, mode]])

المعاملات

file

حدّد المعامل filename اسم ملف قاعدة البيانات المراد فتحها.

flag

يأخذ المعامل الاختياري flag إحدى القيم التالية:

القيمة الوصف
'r' فتح قاعدة البيانات للقراءة فقط (القيمة الافتراضية).
'w' فتح قاعدة البيانات للكتابة والقراءة.
'c' فتح قاعدة البيانات للكتابة والقراءة، وإنشائها في حال عدم وجودها.
'n' تنشئ الدالة قاعدة بيانات جديدة وفارغة، وتفتحها للكتابة والقراءة.

يمكن كذلك إلحاق الحروف الإضافية التالية إلى المعامل flag للتحكم في طريقة فتح قاعدة البيانات:

القيمة المعنى
'f' فتح قاعدة البيانات في الوضع السريع. لن تكون عمليات الكتابة إلى قاعدة البيانات متزامنة.
's' الوضع المتزامن. في هذا الوضع تُكتب التعديلات المجراة على قاعدة البيانات في ملف قاعدة البيانات مباشرة.
'u' عدم قفل قاعدة البيانات.

ليست جميع الرايات صالحة للاستخدام مع جميع إصدارات gdbm. الثابت open_flags التابع لهذه الوحدة هو سلسلة نصية تتضمن محارف الرايات المدعومة، ويطلق الاستثناء error عند استخدام راية غير مدعومة.

mode

المعامل الاختياري mode هو وضع يونكس Unix mode للملف المعطى، ويستخدم بعد إنشاء قاعدة البيانات فقط. يأخذ هذا المعامل القيمة الثمانية الافتراضية 0o666.

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

تفتح الدالة قاعدة بيانات gdbm وتعيد كائن gdbm.

انظر أيضًا

  • الدالة dbm.open()‎ : تفتح الدالة قاعدة بيانات gdbm وتعيد كائن gdbm.
  • الدالة dbm.ndbm.open()‎ : تفتح الدالة قاعدة بيانات dbm وتعيد كائن ndbm.
  • الدالة dbm.dumb.open()‎ : تفتح الدالة قاعدة بيانات dumbdbm وتعيد كائن dumbdbm.

مصادر

صفحة Interfaces to Unix “databases”‎ في توثيق بايثون الرسمي.