وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

مسیر Root Project Directory Path را در پایتون دریافت کنید

0 76
زمان لازم برای مطالعه: 3 دقیقه


معرفی

هنگام کار با پایتون، ممکن است نیاز به دسترسی به فایل‌هایی داشته باشید که در مکان‌های مختلفی در فهرست پروژه شما قرار دارند. یکی از سناریوهای رایج زمانی است که به عنوان مثال نیاز به خواندن یا نوشتن داده ها در فایلی دارید که در فهرست اصلی پروژه شما قرار دارد.

در این بایت، ما نشان خواهیم داد که چگونه می‌توانید مسیر دایرکتوری پروژه ریشه را در پایتون بازیابی کنید، که به شما امکان می‌دهد به راحتی به فایل‌های موجود در فهرست اصلی خود دسترسی داشته باشید و آن‌ها را دستکاری کنید.

دریافت مسیر دایرکتوری پروژه ریشه

برای بازیابی مسیر دایرکتوری پروژه ریشه، پایتون این را فراهم می کند os ماژول، که شامل توابعی برای تعامل با سیستم عامل است. از جمله این توابع است os.getcwd()، که مسیر دایرکتوری کاری فعلی را برمی گرداند. این دایرکتوری است که اسکریپت شما از آنجا اجرا می شود.

در اینجا مثالی از روش استفاده از آن آورده شده است:

import os


cwd = os.getcwd()

print(cwd)

وقتی این اسکریپت را اجرا می کنید، مسیر دایرکتوری فعلی شما را چاپ می کند.

$ python3 get_cwd.py
/Users/username/Projects/my_python_project

توجه داشته باشید: دایرکتوری فعلی ممکن است همیشه دایرکتوری اصلی پروژه نباشد، به خصوص اگر اسکریپت را از زیر شاخه پروژه خود اجرا می کنید.

دسترسی به فایل ها در دایرکتوری ریشه

هنگامی که مسیر دایرکتوری پروژه ریشه خود را پیدا کردید، می توانید از آن برای دسترسی به فایل های این دایرکتوری استفاده کنید. به عنوان مثال، اگر فایلی به نام دارید data.txt در دایرکتوری ریشه خود، می توانید آن را به صورت زیر باز کرده و استفاده کنید:

import os


cwd = os.getcwd()


with open(os.path.join(cwd, 'data.txt'), 'r') as file:
    data = file.read()

print(data)

این اسکریپت محتویات را می خواند data.txt و آن را در console. بخش مهم این فیلمنامه تنها نیست os.getcwd()، اما همچنین os.path.join(cwd, 'data.txt')، که در این مورد مسیر کامل فایلی را که می خواهید به آن دسترسی پیدا کنید ایجاد می کند.

پیشنهاد می‌کنیم بخوانید:  تبدیل اسکریپت های پایتون به فایل های اجرایی

استفاده کردن pathlib.Path برای مسیر دایرکتوری ریشه

پایتون 3.4 را معرفی کرد pathlib ماژول، که بیشتر یک رویکرد شی گرا برای برخورد با مسیرها دارد. برای دریافت مسیر دایرکتوری پروژه ریشه با استفاده از pathlib، می توانید از Path.cwd() روش:

from pathlib import Path


cwd = Path.cwd()

print(cwd)

درست مثل os.getcwd()، Path.cwd() مسیر دایرکتوری کاری فعلی را برمی گرداند. با این حال، a را برمی گرداند Path هدف – شی، که سپس می توانید از آن برای انجام عملیات های مختلف مرتبط با مسیر استفاده کنید.

به عنوان مثال، برای باز کردن یک فایل در پوشه اصلی، می توانید از / اپراتور برای پیوستن به مسیرها:

from pathlib import Path


cwd = Path.cwd()


with open(cwd / 'data.txt', 'r') as file:
    data = file.read()

print(data)

این اسکریپت همان کار قبلی را انجام می دهد، اما از آن استفاده می کند pathlib برای مدیریت مسیرها، که می تواند کد شما را تمیزتر و خواناتر کند.

توجه داشته باشید: را / اپراتور توسط Path شیء مورد استفاده برای الحاق مسیر، نه تقسیم. بنابراین اگر cwd رشته بود '/path/to/my/dir'، سپس cwd / 'data.txt' منجر خواهد شد '/path/to/my/dir/data.txt'.

بازیابی پویا پوشه پروژه ریشه

در پایتون، می‌توانید به‌صورت پویا مسیر دایرکتوری پروژه ریشه را با استفاده از بازیابی کنید os مدول. این ماژول یک روش قابل حمل برای استفاده از عملکرد وابسته به سیستم عامل را ارائه می دهد. را os.path ماژول برخی از توابع مفید را پیاده سازی می کند روی نام های مسیر

در اینجا یک راه ساده برای تعیین پویا مسیر دایرکتوری پروژه ریشه وجود دارد:

import os

ROOT_DIR = os.path.dirname(os.path.abspath(__file__))
print(ROOT_DIR)

وقتی این اسکریپت را اجرا می کنید، مسیر مطلق دایرکتوری اسکریپت در حال اجرا را خروجی می دهد. در این مورد، __file__ یک متغیر داخلی پایتون است که مسیری را که اسکریپت از آنجا اجرا می شود را خروجی می دهد.

پیشنهاد می‌کنیم بخوانید:  راهنمای کارآموزی رشته در پایتون

استفاده کردن os.curdir برای دایرکتوری ریشه

راه دیگر برای یافتن مسیر دایرکتوری ریشه استفاده از آن است os.curdir، که رشته ثابت مورد استفاده توسط سیستم عامل برای ارجاع به دایرکتوری فعلی را برمی گرداند. این هست ‘.’ برای سیستم های ویندوز و POSIX.

در اینجا یک قطعه کد نمونه است:

import os

ROOT_DIR = os.path.abspath(os.curdir)
print(ROOT_DIR)

اجرای این اسکریپت مسیر مطلق دایرکتوری فعلی را خروجی می دهد.

توجه داشته باشید: به خاطر داشته باشید که دایرکتوری فعلی همان است دایرکتوری که اسکریپت از آن اجرا می شود، نه لزوما دایرکتوری که اسکریپت در آن واقع شده است.

در حال وارد کردن متغیر ROOT_DIR

در پروژه های بزرگتر پایتون، معمول است import را ROOT_DIR متغیر از یک مکان مرکزی این اجازه می دهد تا همه ماژول های پروژه شما به مسیر دایرکتوری ریشه دسترسی داشته باشند.

با فرض اینکه شما تعریف کرده اید ROOT_DIR در فایلی به نام settings.py، تو می توانی import به این صورت است:

from settings import ROOT_DIR

اکنون، ROOT_DIR می تواند در هر نقطه از ماژول که در آن وارد شده است استفاده شود.

نتیجه

در این بایت، راه‌های مختلفی را برای تعیین مسیر دایرکتوری پروژه ریشه در پایتون بررسی کرده‌ایم. ما روش بازیابی پویا مسیر دایرکتوری پروژه ریشه را با استفاده از os ماژول، اهرم os.curdir برای دایرکتوری ریشه، و import را ROOT_DIR متغیر.

(برچسب‌ها به ترجمه)# python



منتشر شده در 1402-12-29 23:36:06

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید