[MẸO] Python - Lấy đường dẫn hiện tại

By JoeVu, at: 22:38 Ngày 08 tháng 2 năm 2023

Thời gian đọc ước tính: __READING_TIME__ minutes

[TIPS] Python - Get current path
[TIPS] Python - Get current path

Khi điều hướng trong môi trường Python, việc hiểu cách xác định hiệu quả thư mục làm việc hiện tại cũng giống như có một bản đồ đáng tin cậy trong vùng đất chưa biết. Trong hướng dẫn này, chúng ta sẽ khám phá các mẹo và thủ thuật khác nhau để dễ dàng lấy được thư mục làm việc trong Python, cung cấp cho bạn một bộ công cụ đa năng để quản lý tệp và thư mục một cách dễ dàng.

 

1. Sử dụng các kiến thức cơ bản với mô-đun os


Mẹo 1: Định vị "Bạn đang ở đây"

import os

current_folder = os.getcwd()
print("Vị trí hiện tại:", current_folder)


Phương pháp cơ bản này sử dụng os.getcwd() đóng vai trò như GPS của tập lệnh Python của bạn, xác định chính xác vị trí của nó.


Mẹo 2: Điều hướng dễ dàng

import os

os.chdir("/path/to/new/folder")

# Xác nhận việc di chuyển
new_folder = os.getcwd()
print("Vị trí mới:", new_folder)


Bằng cách sử dụng os.chdir(), bạn có thể dễ dàng di chuyển qua các thư mục, giúp điều hướng tệp hiệu quả hơn.

 

2. Pathlib - Thư viện hiện đại (chỉ trong Python 3)


Mẹo 3: Bản đồ tinh tế

from pathlib import Path

current_folder = Path.cwd()
print("Vị trí hiện tại (Pathlib):", current_folder)


Đối với những người thích cách tiếp cận hiện đại hơn, Path.cwd() từ mô-đun pathlib cung cấp một giải pháp thanh lịch.


Mẹo 4: Điều hướng tinh vi

from pathlib import Path

Path("/path/to/new/folder").chdir()

# Xác nhận việc di chuyển
new_folder = Path.cwd()
print("Vị trí mới (Pathlib):", new_folder)


Sử dụng Path.chdir() cho một cách hiện đại và tinh vi để di chuyển giữa các thư mục.

 

3. Tận dụng sức mạnh của mô-đun sys


Mẹo 5: Vị trí của tập lệnh

import sys

script_location = sys.path[0]
print("Vị trí tập lệnh:", script_location)


Khi tập lệnh của bạn cần tìm các tập lệnh khác, sys.path[0] cung cấp những hiểu biết quý giá về vị trí của nó.

 

4. Kiểm tra mô-đun - Khám phá bí ẩn của tập lệnh


Mẹo 6: Công việc thám tử

import inspect

script_path = inspect.getfile(inspect.currentframe())
print("Đang chạy từ:", script_path)


Mô-đun inspect hoạt động như một thám tử, tiết lộ các chi tiết cần thiết về tập lệnh Python của bạn, bao gồm cả vị trí hiện tại của nó.

 

5. Tận dụng bí mật của tệp


Mẹo 7: Tập lệnh tiết lộ

import os

script_location = os.path.dirname(__file__)
print("Vị trí tập lệnh (__file__):", script_location)


Khám phá vị trí của tập lệnh của bạn một cách dễ dàng bằng cách khai thác bí mật được giữ kín của Python, __file__.

 

6. Kết hợp linh hoạt - Kết hợp các phương pháp


Mẹo 8: Sự kết hợp tài tình

import os

# Xác định vị trí hiện tại
current_folder = os.getcwd()

# Tạo đường dẫn đến một tệp trong thư mục hiện tại
new_file_path = os.path.join(current_folder, "data", "file.txt")

print("Đường dẫn đầy đủ:", new_file_path)


Kết hợp os.getcwd() với os.path.join() cho một chiến lược mạnh mẽ, đặc biệt hữu ích khi xử lý các tệp trong thư mục hiện tại.

 

7. Thư mục hiện tại trong các framework (Django)

BASE_DIR thường được sử dụng làm thư mục gốc của dự án

from django.conf import settings

settings.BASE_DIR

 

Kết luận

Trong lĩnh vực lập trình Python, việc thành thạo các phương pháp đa dạng để lấy thư mục hiện tại là điều không thể thiếu. Từ các kỹ thuật cơ bản do mô-đun os cung cấp đến sự tinh vi của pathlib, những hiểu biết do sys cung cấp, công việc thám tử của inspect và những tiết lộ tinh tế của tập lệnh thông qua __file__, hướng dẫn này trang bị cho bạn một bộ công cụ mạnh mẽ. Quản lý tập lệnh hiệu quả, điều hướng thư mục và tương tác với tệp một cách tự tin bằng cách kết hợp những mẹo này vào kho vũ khí lập trình Python của bạn.

Tag list:
- Python AI
- python
- python tips
- tips
- python sys.path
- current directory
- python current directory
- python os.path
- current path
- python pathlib
- python current path

Liên quan

Python Scrapers

Đọc thêm
Python Unit Test

Đọc thêm
Python Learning

Đọc thêm

Theo dõi

Theo dõi bản tin của chúng tôi và không bao giờ bỏ lỡ những tin tức mới nhất.