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

كيف أستطيع حساب عدد الأسطر عن طريق البايثون ؟

HardWord

السؤال

أريد حساب عدد الأسطر في ملف ضخم (مئات الآلاف من الأسطر) عن طريق لغة البايثون فكيف أستطيع فعل ذلك ؟ هل يمكنني معرفة عدد الأسطر من دون قراءة كامل الملف ؟

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

أفضل حل بالنسبة لي هو هذا الحل:

def file_len(fname):
    with open(fname) as f:
        for i, l in enumerate(f):
            pass
    return i + 1

فإنك لن تحصل على حل أفضل منه، وعلى أية حال لن تتمكن من معرفة عدد الأسطر في ملف ما دون قراءة كامل الملف، ومن ثم حساب عدد الأسطر عن طريق حساب عدد تكرار \n ومن ثم طباعة النتيجة كما في المثال السابق.
وكما قلت سابقا لا توجد أية طريقة لمعرفة هذه الأسطر دون قراءة كامل الملف، لأن أفضل حلول ستكون دائما مرتبطة بقراءة ذلك الملف، وأفضل ما يمكنك فعله هو التأكد أنك لا تقوم باستخدام الذاكرة بصورة غير ضرورية والتي قد حاولنا حلها في المثال السابق.

المصدر

رابط هذا التعليق
شارك على الشبكات الإجتماعية

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...