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

كيف يمكنني استخراج امتداد ملف عن طريق البايثون ؟

ali_agha

السؤال

لدي مجموعة من الملفات وأريد استخراج امتداد هذه الملفات حتى أستطيع فرزهم والتعامل معهم، فهل هنالك دالة في لغة البايثون لاستخراج امتداد من ملف ؟

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

Recommended Posts

  • 0

هنالك عدة طرق لاستخراج الامتداد من ملف، فيمكنك استخدام دالة path.splitext من مكتبة os لاستخراج الاسم و الامتداد بشكل منفصل كما في المثال التالي:

>>> import os
>>> filename, file_extension = os.path.splitext('/path/to/somefile.ext')
>>> filename
'/path/to/somefile'
>>> file_extension
'.ext'

أو بشكل مختصر يمكنك استخدام هذه الدالة كالتالي:

import os.path

extension = os.path.splitext(filename)[1]

ويمكنك أيضا استخدام هذه الشيفرة البرمجية لاستخراج الامتداد فقط(دون النقطة):

import os.path

extension = os.path.splitext(filename)[1][1:]

أو يمكنك استخدام هذه الشيفرة لفصل الملف إلى جزئين حسب النقطة:

>>> filename = "example.jpeg"

>>> filename.split(".")[-1]'

jpeg'

حيث لن تحصل بهذه الطريقة على رسالة خطأ لو كان الملف بدون امتداد كما في المثال التالي:

>>> "filename".split(".")[-1]

'filename'

ولو كنت في نظام لينكس ستجد أن جميع الشيفرات السابقة تضع سطر جديد في نهاية السلسلة النصية للامتداد، ويمكنك إضافة دالةstrip() إلى نهاية الملف لحل هذه المشكلة:

import os.path

extension = os.path.splitext(filename)[1][1:].strip()

المصدر

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

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

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

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

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

  • إعلانات

  • تابعنا على



×
×
  • أضف...