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

كيف أُغير أسماء الملفات في بايثون؟

MaxReve

السؤال

أحتاج إلى تغيير أسماء مجموعة من الملفات في مجلد معين باستخدام البايثون، لنفترض أن لدي ملفات باسم CHEESE_CHEESE_TYPE.*** وأريد حذف جزء CHEESE_ من الاسم ليصبح CHEESE_TYPE.

فما هي أسهل طريقة في البايثون لفعل ذلك؟

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

Recommended Posts

  • 0

هنالك عدة طرق لتعديل أسماء مجموعة من الملفات في البايثون، فلو افترضنا أنك موجود حاليا في المجلد الذي تريد تغيير أسماء فيه، وأن حالة أول 7 أحرف من الملفات لا تتغير(يمكنك تغيير طول عدد الأحرف حسب الحاجة 7 أو 8 أو 3 …) فيمكنك في هذه الحالة استخدام هذه الشيفرة البرمجية لتغيير أسماء الملفات:

from glob import glob
from os import rename
for fname in glob('*.prj'):
    rename(fname, fname[8:])

أو يمكنك الاستعانة بدوال مكتبة os لتعديل أسماء الملفات كما في المثال التالي:

$ ls
cheese_cheese_type.bar  cheese_cheese_type.foo
$ python
>>> import os
>>> for filename in os.listdir("."):
...  if filename.startswith("cheese_"):
...    os.rename(filename, filename[7:])
...
>>>
$ ls
cheese_type.bar  cheese_type.foo

مثال آخر حيث سيتأكد من أن أسماء الملفات لا تحتوي على أكثر من كلمة cheese_:

#!/usr/bin/env python
from os import rename, listdir

badprefix = "cheese_"
fnames = listdir('.')

for fname in fnames:
    if fname.startswith(badprefix*2):
        rename(fname, fname.replace(badprefix, '', 1))

المصدر

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

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

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

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

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

  • إعلانات

  • تابعنا على



×
×
  • أضف...