پایتون برای کارهای روزمره سیستمعامل 🧰✨
خیلی وقتها پشت سیستم چند تا کار تکراری داریم: جابهجا کردن فایلها، عوض کردن اسمها، پیدا کردن فایلهای قدیمی و پاک کردن لاگها. این چیزها اگر دستی انجام بشن هم وقت میگیرن، هم احتمال خطا زیاده.
با یک اسکریپت ساده پایتون میشه این کارها رو اتومات کرد. ایدهی کلی اینه: از ماژولهای استاندارد مثل os و pathlib و shutil استفاده میکنیم تا بدون نیاز به هیچ کتابخونه اضافی، فولدرهامون رو مرتب کنیم.
یکی از آموزشهای خوب برای شروع این فاز، بخش "File and Directory Access" توی مستندات رسمی پایتونه:
pathlib – Object-oriented filesystem paths
اینجا یک مثال واقعی: اسکریپتی که یک فولدر رو اسکن میکنه و فایلها رو بر اساس پسوند، توی زیرفولدرهای جدا میریزه (مثلا
چند نکتهی کاربردی:
🔹 استفاده از Pathlib خیلی خواناتر از کار با
🔹 قبل از اجرای اسکریپت روی فولدر اصلی، بهتره روی یک فولدر تست امتحان بشه تا مطمئن باشی چیزی اشتباه جابهجا نمیشه.
🔹 میشه این ایده رو گسترش داد: مثلا فایلهای قدیمیتر از ۳۰ روز رو ببری داخل یک فولدر
مستندات رسمی پایتون برای کار با فایلسیستم خیلی تمیز و قابل اتکا هستن؛ هر وقت خواستی اسکریپت رو حرفهایتر کنی، سر زدن به این صفحهها واقعا کمک میکنه:
shutil – High-level file operations
یک بار این اسکریپت رو روی فولدر Downloads خودت اجرا کن، اگر مفید بود، تو پروژههای دیگهات هم از همین الگو استفاده کن و با بقیه پایتونیستها به اشتراک بذار 🚀
🔖 #Python #پایتون #Python #Automation #pathlib #shutil #Scripting
👤 Developix
💎 Channel: @DevelopixPython
خیلی وقتها پشت سیستم چند تا کار تکراری داریم: جابهجا کردن فایلها، عوض کردن اسمها، پیدا کردن فایلهای قدیمی و پاک کردن لاگها. این چیزها اگر دستی انجام بشن هم وقت میگیرن، هم احتمال خطا زیاده.
با یک اسکریپت ساده پایتون میشه این کارها رو اتومات کرد. ایدهی کلی اینه: از ماژولهای استاندارد مثل os و pathlib و shutil استفاده میکنیم تا بدون نیاز به هیچ کتابخونه اضافی، فولدرهامون رو مرتب کنیم.
یکی از آموزشهای خوب برای شروع این فاز، بخش "File and Directory Access" توی مستندات رسمی پایتونه:
pathlib – Object-oriented filesystem paths
اینجا یک مثال واقعی: اسکریپتی که یک فولدر رو اسکن میکنه و فایلها رو بر اساس پسوند، توی زیرفولدرهای جدا میریزه (مثلا
images، videos، documents). این دقیقا چیزیه که تو خیلی از اسکریپتهای مدیریت دانلود استفاده میشه.from pathlib import Path
import shutil
BASE_DIR = Path.home() / "Downloads"
EXT_MAP = {
"images": [".png", ".jpg", ".jpeg", ".gif"],
"videos": [".mp4", ".mkv", ".avi"],
"documents": [".pdf", ".docx", ".xlsx", ".pptx"],
"archives": [".zip", ".rar", ".tar", ".gz"],
}
def get_category(ext: str) -> str | None:
ext = ext.lower()
for category, exts in EXT_MAP.items():
if ext in exts:
return category
return None
for item in BASE_DIR.iterdir():
if not item.is_file():
continue
category = get_category(item.suffix)
if not category:
continue
target_dir = BASE_DIR / category
target_dir.mkdir(exist_ok=True)
target_path = target_dir / item.name
print(f"Moving {item.name} -> {target_path}")
shutil.move(str(item), str(target_path))
چند نکتهی کاربردی:
🔹 استفاده از Pathlib خیلی خواناتر از کار با
os.path و رشتههای خامه. کار با مسیرها رو شبیه Objectها میکنه.🔹 قبل از اجرای اسکریپت روی فولدر اصلی، بهتره روی یک فولدر تست امتحان بشه تا مطمئن باشی چیزی اشتباه جابهجا نمیشه.
🔹 میشه این ایده رو گسترش داد: مثلا فایلهای قدیمیتر از ۳۰ روز رو ببری داخل یک فولدر
old یا لاگهای بالای یک حجم مشخص رو پاک کنی. همهش با همین ماژولهای استاندارد قابل انجامه.مستندات رسمی پایتون برای کار با فایلسیستم خیلی تمیز و قابل اتکا هستن؛ هر وقت خواستی اسکریپت رو حرفهایتر کنی، سر زدن به این صفحهها واقعا کمک میکنه:
shutil – High-level file operations
یک بار این اسکریپت رو روی فولدر Downloads خودت اجرا کن، اگر مفید بود، تو پروژههای دیگهات هم از همین الگو استفاده کن و با بقیه پایتونیستها به اشتراک بذار 🚀
🔖 #Python #پایتون #Python #Automation #pathlib #shutil #Scripting
👤 Developix
💎 Channel: @DevelopixPython
👍4❤3