Hướng dẫn what does sys path append python? - đường dẫn sys nối thêm python là gì?

Sys.Path là một danh sách các thư mục trong đó phiên dịch viên Python tìm kiếm các mô -đun. Tâm trí bạn, đây là một danh sách! Khi một mô -đun được yêu cầu trong một tệp dự án, nó sẽ tìm kiếm thông qua từng một trong các thư mục trong danh sách. Nếu mô -đun được đặt trong một trong các thư mục đó, thì mọi thứ đều ổn và dự án của bạn được hiển thị thành công. Tuy nhiên, nếu mô -đun không nằm trong bất kỳ thư mục được liệt kê nào, thì dự án của bạn sẽ không thể tham gia vào thư mục của bạn trong đó mô -đun của bạn được đặt vào danh sách bằng cách sử dụng hàm append (). Trong hướng dẫn này, chúng tôi sẽ tìm hiểu về cách sử dụng sys.path.append () trong Python.

Liệt kê đường dẫn hiện tại

Bằng cách khai báo những điều sau đây, chúng ta có thể kiểm tra đường dẫn Python hiện tại:

Nhập khẩu sys

Frompprintimportpprint pprint import pprint

pprint(sys.path)(sys.path)

Ở đây, mô -đun Pprint chỉ được sử dụng để làm cho mọi thứ trông đẹp, vì vậy bạn có thể bỏ qua phần đó và tập trung vào phần còn lại. Tất cả những gì chúng tôi đang cố gắng làm ở đây là in ra sys.path.

Đây là những gì chúng tôi nhận được:

Hướng dẫn what does sys path append python? - đường dẫn sys nối thêm python là gì?

Những gì bạn nhận thấy ở đây là trước hết, nó là một danh sách. Vì vậy, theo danh sách, trước tiên nó sẽ xem xét trong thư mục làm việc hiện tại, sau đó trong các thư mục khác từng người một. Thư mục làm việc hiện tại là thư mục trong đó tập lệnh Python chính - đoạn được thực hiện - được tìm thấy. Hơn nữa, điều này cũng có nghĩa là danh sách này có thể được sửa đổi hoặc chỉnh sửa.

Thêm một đường dẫn

Phương thức sys.path.append () được sử dụng cụ thể để thêm một đường dẫn đến các đường dẫn hiện có.

Giả sử bây giờ tôi có hai tệp riêng biệt: main.py và file1.py. Main.py là tệp chính và chúng tôi sẽ cố gắng nhập File1.py (một mô -đun mà chúng tôi đã viết).

main.pyfile1.py

Nhập tệp1 file1

print(file1.secret)(file1.secret)

bí mật = "Đây là cụm từ bí mật"= “This is the secret phrase”

Vì File1.py hoặc mô -đun của chúng tôi nằm trong thư mục làm việc, bạn sẽ có thể in thành công câu bí mật. Điều này là như vậy bởi vì khi trình thông dịch Python tìm kiếm mô -đun được yêu cầu, nó sẽ tìm kiếm trong thư mục làm việc trước và vì mô -đun của chúng tôi có tên File1 nằm trong thư mục làm việc, nó sẽ tự động in ra câu bí mật của chúng tôi.

Hướng dẫn what does sys path append python? - đường dẫn sys nối thêm python là gì?

Bây giờ, giả sử rằng tôi tạo một thư mục trong thư mục làm việc của mình có tên là Thư mục1 và đặt mô -đun của tôi có tên File1 trong đó.

Hướng dẫn what does sys path append python? - đường dẫn sys nối thêm python là gì?

Bây giờ, trong mô -đun File1 là cụm từ bí mật mà chúng tôi đang cố gắng in ra. Trong trường hợp này, nó sẽ không in ra cụm từ bí mật. Tại sao? Bởi vì thông dịch viên đang tìm kiếm trong thư mục trực tuyến1 cho bất kỳ mô -đun nào. Nói cách khác, thư mục làm việc hiện tại là một thành viên của danh sách sys.path nhưng thư mục1, không phải là thành viên của danh sách đó. Vì vậy, lỗi kết quả là lỗi mô -đun - nó không thể tìm thấy hoặc xác định vị trí mô -đun có tên File1.

Hướng dẫn what does sys path append python? - đường dẫn sys nối thêm python là gì?

Để ngăn chặn vấn đề này, bạn cần nói với trình thông dịch Python nơi tìm File1 mô -đun. Đây là nơi phương thức sys.path.append () xuất hiện.

Phương thức sys.path.append () được sử dụng để nối đường dẫn mà chúng tôi muốn vào danh sách hiện có.

Trên hệ thống Linux:

sys.path.Append (Hồi/path/to/drv)).path.append(“/path/to/dir)

Trên hệ thống Windows, bạn đã viết:

sys.path.append (Hồi C: \\ path \\ to \\ dir,).path.append(“C:\\path\\to\\dir)

Xin lưu ý rằng bạn không thể thêm bất kỳ tệp đã cho vào sys.Path, thay vào đó bạn có thể thêm các thư mục và sau đó nhập các tệp bạn muốn.

Ví dụ 1

Vì vậy, hãy để thử thử hoạt động trước đó (trong đó mô -đun File1 được đặt trong thư mục1) nhưng lần này, chúng tôi sẽ nối đường dẫn đến mô -đun File1 vào sys.Path bằng phương thức sys.Path.Append ().

main.pyfile1.py

Nhập khẩu sys

Frompprintimportpprint.path.append(‘C:\\Users\\never\\PycharmProjects\\

Ở đây, mô -đun Pprint chỉ được sử dụng để làm cho mọi thứ trông đẹp, vì vậy bạn có thể bỏ qua phần đó và tập trung vào phần còn lại. Tất cả những gì chúng tôi đang cố gắng làm ở đây là in ra sys.path.)

Nhập tệp1 file1

print(file1.secret)(file1.secret)

bí mật = "Đây là cụm từ bí mật"= “This is the secret phrase”

Vì File1.py hoặc mô -đun của chúng tôi nằm trong thư mục làm việc, bạn sẽ có thể in thành công câu bí mật. Điều này là như vậy bởi vì khi trình thông dịch Python tìm kiếm mô -đun được yêu cầu, nó sẽ tìm kiếm trong thư mục làm việc trước và vì mô -đun của chúng tôi có tên File1 nằm trong thư mục làm việc, nó sẽ tự động in ra câu bí mật của chúng tôi.

Bây giờ, giả sử rằng tôi tạo một thư mục trong thư mục làm việc của mình có tên là Thư mục1 và đặt mô -đun của tôi có tên File1 trong đó.

Hướng dẫn what does sys path append python? - đường dẫn sys nối thêm python là gì?

Bây giờ, trong mô -đun File1 là cụm từ bí mật mà chúng tôi đang cố gắng in ra. Trong trường hợp này, nó sẽ không in ra cụm từ bí mật. Tại sao? Bởi vì thông dịch viên đang tìm kiếm trong thư mục trực tuyến1 cho bất kỳ mô -đun nào. Nói cách khác, thư mục làm việc hiện tại là một thành viên của danh sách sys.path nhưng thư mục1, không phải là thành viên của danh sách đó. Vì vậy, lỗi kết quả là lỗi mô -đun - nó không thể tìm thấy hoặc xác định vị trí mô -đun có tên File1.

Để ngăn chặn vấn đề này, bạn cần nói với trình thông dịch Python nơi tìm File1 mô -đun. Đây là nơi phương thức sys.path.append () xuất hiện.

main.py

Nhập khẩu sys

Frompprintimportpprint pprint import pprint

pprint(sys.path)(sys.path)

Hướng dẫn what does sys path append python? - đường dẫn sys nối thêm python là gì?

Ở đây, mô -đun Pprint chỉ được sử dụng để làm cho mọi thứ trông đẹp, vì vậy bạn có thể bỏ qua phần đó và tập trung vào phần còn lại. Tất cả những gì chúng tôi đang cố gắng làm ở đây là in ra sys.path.

Đây là những gì chúng tôi nhận được:

main.py

Nhập khẩu sys

Frompprintimportpprint pprint import pprint

Ở đây, mô -đun Pprint chỉ được sử dụng để làm cho mọi thứ trông đẹp, vì vậy bạn có thể bỏ qua phần đó và tập trung vào phần còn lại. Tất cả những gì chúng tôi đang cố gắng làm ở đây là in ra sys.path..path.append(‘/home/kalyani/directory1’)

pprint(sys.path)(sys.path)

Hướng dẫn what does sys path append python? - đường dẫn sys nối thêm python là gì?

Đây là những gì chúng tôi nhận được:

Pythonpath

Có một vấn đề nhỏ bé với những gì chúng tôi vừa làm và đó là chúng tôi đã không đặt vị trí đó vĩnh viễn vào danh sách sys.path. Phương thức sys.path.append () được sử dụng để tạm thời thêm một đường dẫn và như vậy, đường dẫn đó sẽ có giá trị cho một phiên chẳng hạn. Nếu bạn muốn thay đổi vĩnh viễn danh sách sys.path, thì chúng ta có thể sử dụng PythonPath để thêm đường dẫn vào danh sách. Vì Sys.Path cũng xem xét Pythonpath, các vị trí được liệt kê sau đó sẽ được đưa vào danh sách các đường dẫn.

Trên Linux:

xuất PythonPath = xông/path/to/dir=’/path/to/dir

  1. Trên máy Linux của bạn, mở một thiết bị đầu cuối và điều hướng đến thư mục chứa .bashrc.
  2. Nano .Bashrc
  3. Thêm các mục sau ở cuối tệp .bashrc:

    Xuất Pythonpath = xông/home/kalyani/thư mục1=’/home/kalyani/directory1’

Ở đây, bạn có thể thêm đường dẫn mà bạn muốn.

  1. Đóng thiết bị đầu cuối và mở một thiết bị đầu cuối mới
  2. Bây giờ, hãy thử thực hiện chương trình của bạn. Trong trường hợp của tôi, nó sẽ là như sau:

main.py

Nhập khẩu sys

Frompprintimportpprint pprint import pprint

pprint(sys.path)(sys.path)

Hướng dẫn what does sys path append python? - đường dẫn sys nối thêm python là gì?

Khi viết các chương trình phức tạp bằng Python, cuối cùng chúng tôi sẽ thêm các mô -đun của bên thứ ba hoặc thậm chí tốt hơn, hãy tạo các mô -đun của riêng chúng tôi. Trong mọi trường hợp, chúng tôi không thể giữ mọi tệp Python mà chúng tôi tạo trong một thư mục, chúng tôi có thể muốn sử dụng nhiều thư mục để phân loại đầy đủ các tệp của chúng tôi. Tuy nhiên, vấn đề là chúng tôi có thể cần nhập các mô -đun được tạo bên trái và phải. Trong những trường hợp như vậy, nếu chúng tôi muốn ngăn chặn lỗi ModulenotFound, thì chúng tôi có thể thêm vị trí của thư mục - và quan tâm đến bạn, nó phải là một thư mục, không phải là một tệp - vào sys.path sử dụng sys.path.append ( ) phương pháp.

Mã hóa hạnh phúc!

Thông tin về các Tác giả

Hướng dẫn what does sys path append python? - đường dẫn sys nối thêm python là gì?

Tôi là một người yêu thích linux và mã.

SYS PATH EPEND (' /') làm gì?

Danh sách đường dẫn.Các sys.đường dẫn.Phương thức append () được sử dụng để tạm thời thêm một đường dẫn và như vậy, đường dẫn đó sẽ hợp lệ cho một phiên chẳng hạn.temporarily add a path and as such, that path would be valid for a session for example.

Con đường Sys có nối liền tạm thời không?

Nối thêm một giá trị cho sys.Đường dẫn chỉ sửa đổi nó tạm thời, tức là chỉ cho phiên đó.Sửa đổi vĩnh viễn được thực hiện bằng cách thay đổi PythonPath và thư mục cài đặt mặc định.only modifies it temporarily, i.e for that session only. Permanent modifications are done by changing PYTHONPATH and the default installation directory.

Sys trong Python là gì?

Mô -đun này cung cấp quyền truy cập vào một số biến được sử dụng hoặc duy trì bởi trình thông dịch và các chức năng tương tác mạnh mẽ với trình thông dịch.Nó luôn luôn có sẵn.

Làm thế nào để python khởi tạo đường dẫn sys?

Một đường dẫn tìm kiếm mô -đun được khởi tạo khi Python bắt đầu.Đường dẫn tìm kiếm mô -đun này có thể được truy cập tại SYS.đường dẫn .Mục đầu tiên trong đường dẫn tìm kiếm mô -đun là thư mục chứa tập lệnh đầu vào, nếu có.when Python starts. This module search path may be accessed at sys. path . The first entry in the module search path is the directory that contains the input script, if there is one.