Hướng dẫn how do you show a path in python? - làm thế nào để bạn hiển thị một đường dẫn trong python?

Pythonpath là một biến môi trường có giá trị là danh sách các thư mục. Sau khi được đặt, nó được Python sử dụng để tìm kiếm các mô -đun nhập khẩu, cùng với STD khác. và thư mục thư viện của bên thứ 3 được liệt kê trong "sys.path" của Python.

Như bất kỳ biến môi trường nào khác, bạn có thể xuất nó trong shell hoặc trong ~/.bashrc, xem tại đây. Bạn có thể truy vấn Os.Environ ['PythonPath'] cho giá trị của nó trong Python như hình dưới đây:

$ python3 -c "import os, sys; print(os.environ['PYTHONPATH']); print(sys.path) if 'PYTHONPATH' in sorted(os.environ) else print('PYTHONPATH is not defined')"

Nếu được định nghĩa trong vỏ là

$ export PYTHONPATH=$HOME/Documents/DjangoTutorial/mysite

Sau đó kết quả =>

/home/Documents/DjangoTutorial/mysite
['', '/home/Documents/DjangoTutorial/mysite', '/usr/local/lib/python37.zip', '/usr/local/lib/python3.7', '/usr/local/lib/python3.7/lib-dynload', '/usr/local/lib/python3.7/site-packages']

Kết quả khác =>

PYTHONPATH is not defined

Để đặt Pythonpath vào nhiều đường dẫn, xem ở đây.

Lưu ý rằng người ta có thể thêm hoặc xóa đường dẫn tìm kiếm qua sys.path.insert (), del hoặc xóa () khi chạy, nhưng không thông qua os.environ []. Thí dụ:

>>> os.environ['PYTHONPATH']="$HOME/Documents/DjangoTutorial/mysite"
>>> 'PYTHONPATH' in sorted(os.environ)
True
>>> sys.path // but Not there
['', '/usr/local/lib/python37.zip', '/usr/local/lib/python3.7', '/usr/local/lib/python3.7/lib-dynload', '/usr/local/lib/python3.7/site-packages']

>>> sys.path.insert(0,os.environ['PYTHONPATH'])
>>> sys.path // It's there
['$HOME/Documents/DjangoTutorial/mysite', '', '/usr/local/lib/python37.zip', '/usr/local/lib/python3.7', '/usr/local/lib/python3.7/lib-dynload', '/usr/local/lib/python3.7/site-packages']
>>> 

Tóm lại, Pythonpath là một cách để chỉ định (các) đường dẫn tìm kiếm Python cho các mô -đun nhập khẩu trong sys.path. Bạn cũng có thể áp dụng các hoạt động danh sách trực tiếp cho sys.Path mà không cần sự trợ giúp của Pythonpath.

Trong ngôn ngữ lập trình Python, để sử dụng mã trong một gói, Python phải có khả năng định vị gói và tải nó vào bộ nhớ. Thông tin vị trí được lưu trữ dưới dạng đường dẫn trong Python. Bất cứ khi nào bạn yêu cầu Python nhập gói, Python nhìn vào tất cả các tệp trong danh sách các đường dẫn của nó để tìm thấy nó. Thông tin đường dẫn đến từ ba nguồn.

Nguồn thông tin đường dẫn

  • Các biến môi trường: Các biến môi trường Python, chẳng hạn như Pythonpath, cho Python biết nơi tìm các mô -đun trên đĩa. Python environment variables, such as PYTHONPATH, tell Python where to find modules on disk.

  • Thư mục hiện tại: Bạn có thể thay đổi thư mục Python hiện tại để nó có thể định vị bất kỳ mô -đun nào được sử dụng bởi ứng dụng của bạn. You can change the current Python directory so that it can locate any modules used by your application.

  • Thư mục mặc định: Ngay cả khi bạn không xác định bất kỳ biến môi trường nào và thư mục hiện tại không mang lại bất kỳ mô -đun nào có thể sử dụng, Python vẫn có thể tìm thấy các thư viện của riêng mình trong bộ thư mục mặc định được đưa vào như một phần của thông tin đường dẫn của riêng nó. Even when you don’t define any environment variables and the current directory doesn’t yield any usable modules, Python can still find its own libraries in the set of default directories that are included as part of its own path information.

Cách tìm thông tin đường dẫn

Thật hữu ích khi biết thông tin đường dẫn hiện tại vì việc thiếu đường dẫn có thể khiến ứng dụng của bạn bị lỗi. Các bước sau đây cho thấy cách bạn có thể có được thông tin đường dẫn:
  1. Mở vỏ Python.

    Bạn thấy cửa sổ vỏ Python xuất hiện.

  2. Nhập nhập sys và nhấn Enter.

  3. Nhập cho p vào sys.Path: print (p) vào một ô mới và nhấp vào chạy ô chạy

    Bạn thấy một danh sách thông tin đường dẫn, như trong hình dưới đây. Danh sách của bạn có thể khác với bản hiển thị trong hình, tùy thuộc vào nền tảng của bạn, phiên bản Python bạn đã cài đặt và các tính năng Python bạn đã cài đặt.

    Hướng dẫn how do you show a path in python? - làm thế nào để bạn hiển thị một đường dẫn trong python?

Một cách khác để tìm đường dẫn

Thuộc tính sys.path là đáng tin cậy nhưng không phải lúc nào cũng chứa mọi đường dẫn mà Python có thể nhìn thấy. Nếu bạn không thấy một con đường cần thiết, bạn luôn có thể kiểm tra một nơi khác mà Python tìm kiếm thông tin. Các bước sau đây cho thấy cách thực hiện nhiệm vụ này:sys.path attribute is reliable but may not always contain every path that Python can see. If you don’t see a needed path, you can always check in another place that Python looks for information. The following steps show how to perform this task:
  1. Trong một ô mới, nhập nhập hệ điều hành và nhấn Enter.

  2. Gõ os.environ ['PythonPath']. Split (Os.PathSep) và nhấn Enter.

    Khi bạn có biến môi trường Pythonpath được xác định, bạn sẽ thấy một danh sách các đường dẫn, như trong hình dưới đây. Tuy nhiên, nếu bạn không có biến môi trường được xác định, bạn sẽ thấy một thông báo lỗi thay thế.PYTHONPATH environment variable defined, you see a list of paths, as shown in the figure below. However, if you don’t have the environment variable defined, you see an error message instead.

    Hướng dẫn how do you show a path in python? - làm thế nào để bạn hiển thị một đường dẫn trong python?

    Thuộc tính sys.path không bao gồm hàm chia (), đó là lý do tại sao ví dụ sử dụng vòng lặp cho nó. Tuy nhiên, thuộc tính os.environ ['pythonpath'] bao gồm hàm chia (), do đó bạn có thể sử dụng nó để tạo danh sách các đường dẫn riêng lẻ.sys.path attribute doesn’t include the split() function, which is why the example uses a for loop with it. However, the os.environ['PYTHONPATH'] attribute does include the split() function, so you can use it to create a list of individual paths.

    Bạn phải cung cấp Split () một giá trị để tìm kiếm trong việc chia một danh sách các mục. Hằng số OS.PathSep (một biến có một, không thể thay đổi, giá trị được xác định) xác định bộ phân cách đường dẫn cho nền tảng hiện tại để bạn có thể sử dụng cùng một mã trên bất kỳ nền tảng nào hỗ trợ Python.split() with a value to look for in splitting a list of items. The os.pathsep constant (a variable that has one, unchangeable, defined value) defines the path separator for the current platform so that you can use the same code on any platform that supports Python.

Bạn cũng có thể thêm và loại bỏ các mục khỏi sys.path. Ví dụ: nếu bạn muốn thêm thư mục làm việc hiện tại vào danh sách các gói, bạn nhập sys.path.append (os.getcwd ()) và nhấn Enter.sys.path. For example, if you want to add the current working directory to the list of packages, you type sys.path.append(os.getcwd()) and press Enter.

Khi bạn liệt kê lại nội dung sys.path, bạn sẽ thấy mục nhập mới được thêm vào cuối danh sách. Tương tự như vậy, khi bạn muốn xóa một mục nhập, bạn nhập sys.path.remove (os.getcwd ()) và nhấn enter. Việc bổ sung chỉ có mặt trong phiên hiện tại.

Về bài viết này

Về cuốn sách tác giả:

John Paul Mueller là một tác giả tự do và biên tập viên kỹ thuật với hơn 107 cuốn sách và 600 bài báo cho tín dụng của ông. Các đối tượng của ông bao gồm từ mạng và trí tuệ nhân tạo đến quản lý cơ sở dữ liệu và lập trình xuống. Ông cũng tư vấn và viết các kỳ thi chứng nhận. Truy cập trang web của anh ấy tại http://www.johnmuellerbooks.com/.

Bài viết này có thể được tìm thấy trong danh mục:

  • Python,,

Làm thế nào để tôi có được con đường đầy đủ trong Python?

Để có được một đường dẫn tuyệt đối trong Python, bạn sử dụng thư viện OS.Path.abspath.Chèn tên tệp của bạn và nó sẽ trả về đường dẫn đầy đủ từ thư mục làm việc bao gồm cả tệp.use the os. path. abspath library. Insert your file name and it will return the full path relative from the working directory including the file.

Con đường () làm gì trong Python?

Dirname (đường dẫn): Nó được sử dụng để trả về tên thư mục từ đường dẫn được đưa ra.Hàm này trả về tên từ đường dẫn ngoại trừ tên đường dẫn.return the directory name from the path given. This function returns the name from the path except the path name.