اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

نقوم في بايثون بفتح ملف للقراءة من خلال الدالة open، حيث نمرر الوسيط الأول مسار الملف، وفي الوسيط الثاني r للدلالة على read أي قراءة، وقمنا في المثال بتخزين مرجعية للملف المفتوح في المتغير f.

ثم لقراءة محتوى الملف نطبق الدالة read على f

f = open("D:\\path\to\file.txt", "r")
print(f.read())

أما لقراءة الملف سطراً بسطر، يمكننا المرور عليه باستخدام حلقة:

f = open("file.txt", "r")
for x in f:
  print(x)

 

كما يمكن استخدام الدالة readline لقراءة سطر فقط، يمكن تكرارها ضمن حلقة لقراءة عدة أسطر..

  • 0
نشر

لنفترض أنه لديك ملف بالإسم file.txt يحتوي على التالي:

line 1
line 2
line 3

و تريد قراءة المُحتوى و طباعته يُمكنك إستخدام الطريقة التالية:

with open('file.txt') as f:
    contents = f.read()
    print(contents)

و سيكون الناتج كالتالي:

line 1
line 2
line 3

يُمكنك تجربة المثال من: هنا

لقراءة المحتوى سطر وراء سطر يُمكنك ذلك من خلال:

with open('file.txt') as f:
    for line in f:
        print(line)

يُمكنك تجربة المثال من: هنا

  • 0
نشر

هناك ثلاث خطوات يجب عليك إتباعها

أولاً فتح الملف بإستخدام الدالة ()open 

#open(مسار_الملف, الوضع)
# مثال
f = open('text_file.txt','r')

والأوضاع كالآتي

  • 'r' لقراءة read النص من الملف
  • 'w' لكتابة write النص على الملف
  • 'a' لإضافة append نص الى نهاية الملف

الكائن file يعطيك ثلاث دوال للقراءة النص من ملف نصي

  • ()read قراءة النص كاملاً الى سلسلة نصية ، هذه الدالة مفيدة إذا كان الملف النصي صغير وتريد تعديل كامل الملف
  • ()readline يقراء الملف النصي سطر بسطر ويُرجع اليك سلاسل نصية
  • ()readlines يقوم بقراءة كافة الأسطر من الملف ويُرجع اليك قائمة سلاسل نصية

بعد الإنتهاء من قراءة الملف يبقى الملف مفتوحاً الى أن تقوم بغلقه بإستخدام الدالة ()close

f.close()

أما إذا أردت إغلاق الملف بشكل تلقائي بدون إستدعاء الدالة ()close ، فيمكنك إستخدام with كالآتي

with open("file.txt") as f:
    contents = f.readlines()

مثال عملي لطريقة للقراءة من ملف

with open('text_file.txt') as f:
    contents = f.read()
    print(contents)

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...