Hướng dẫn path format in python - định dạng đường dẫn trong python

Một trong những phiền toái của chương trình, Microsoft Windows sử dụng ký tự dấu gạch chéo ngược giữa các tên thư mục trong khi hầu hết mọi máy tính khác đều sử dụng dấu gạch chéo phía trước:

Show

Nội dung chính ShowShow

  • Giải pháp sai: Xây dựng đường dẫn tệp bằng tay
  • Giải pháp cũ: Mô -đun Python từ OS.Path
  • Giải pháp tốt hơn: Python 3 Pathlib!
  • Giải pháp sai: Xây dựng đường dẫn tệp bằng tay
  • Giải pháp cũ: Mô -đun Python từ OS.Path
  • Giải pháp tốt hơn: Python 3 Pathlib!
  • Tham khảo một tệp có đường dẫn và tên đầy đủ
  • Trong Windows, một đường dẫn thư mục tệp đầy đủ bắt đầu bằng một ký tự ổ đĩa (c :, d :., v.v.). Trong Linux và OS-X, nó bắt đầu bằng "/", được gọi là gốc. Các thư mục được phân tách bằng một dấu gạch chéo "/". Bạn có thể tra cứu đường dẫn thư mục đầy đủ của tệp và tên tệp thông qua "thuộc tính" của nó. Xem cách nó được thực hiện trong Câu hỏi thường gặp này.
  • Ngoài ra, bạn có thể tiền tố toàn bộ chuỗi tên tệp với điểm đánh dấu RawString "r": r'c: \ users \ narae \ Desktop \ alice.txt '. Bằng cách đó, mọi thứ trong chuỗi được hiểu là một nhân vật theo nghĩa đen và bạn không phải thoát khỏi mọi dấu gạch chéo ngược.
  • Xem ảnh chụp màn hình này và phần tiếp theo để biết cách làm việc với cài đặt CWD của bạn trong vỏ Python.
  • Làm thế nào để bạn hiển thị một con đường trong Python?
  • Làm cách nào để đặt đường dẫn tệp trong Python?
  • Làm cách nào để chỉ ra một đường dẫn tệp?
  • Con đường () làm gì trong Python?

Đây là một tai nạn của lịch sử máy tính đầu năm 1980. Phiên bản đầu tiên của MS-DOS đã sử dụng ký tự Slash chuyển tiếp để chỉ định các tùy chọn dòng lệnh. Khi Microsoft thêm hỗ trợ cho các thư mục trong MS-DOS 2.0, nhân vật chém phía trước đã được thực hiện để họ sử dụng dấu gạch chéo ngược. Ba mươi lăm năm sau, chúng tôi vẫn bị mắc kẹt với sự không tương thích này.

Nếu bạn muốn mã Python của mình hoạt động trên cả Windows và Mac/Linux, bạn sẽ cần phải giải quyết các loại vấn đề dành riêng cho nền tảng này. May mắn thay, Python 3 có một mô -đun mới có tên Pathlib làm cho làm việc với các tệp gần như không đau.pathlib that makes working with files nearly painless.pathlib that makes working with files nearly painless.

Hãy cùng xem nhanh các cách xử lý các đường dẫn tên tệp khác nhau và xem Pathlib có thể làm cho cuộc sống của bạn tốt hơn như thế nào!pathlib can make your life better!pathlib can make your life better!

Giải pháp sai: Xây dựng đường dẫn tệp bằng tay

Giải pháp cũ: Mô -đun Python từ OS.Path

Giải pháp tốt hơn: Python 3 Pathlib!

Tham khảo một tệp có đường dẫn và tên đầy đủ

Trong Windows, một đường dẫn thư mục tệp đầy đủ bắt đầu bằng một ký tự ổ đĩa (c :, d :., v.v.). Trong Linux và OS-X, nó bắt đầu bằng "/", được gọi là gốc. Các thư mục được phân tách bằng một dấu gạch chéo "/". Bạn có thể tra cứu đường dẫn thư mục đầy đủ của tệp và tên tệp thông qua "thuộc tính" của nó. Xem cách nó được thực hiện trong Câu hỏi thường gặp này.open() on Windows. But even still, you shouldn’t depend on that. Not all Python libraries will work if you use wrong kind of slash on the wrong operating system — especially if they interface with external programs or libraries.

Ngoài ra, bạn có thể tiền tố toàn bộ chuỗi tên tệp với điểm đánh dấu RawString "r": r'c: \ users \ narae \ Desktop \ alice.txt '. Bằng cách đó, mọi thứ trong chuỗi được hiểu là một nhân vật theo nghĩa đen và bạn không phải thoát khỏi mọi dấu gạch chéo ngược.

Xem ảnh chụp màn hình này và phần tiếp theo để biết cách làm việc với cài đặt CWD của bạn trong vỏ Python.

Giải pháp cũ: Mô -đun Python từ OS.Path

Giải pháp tốt hơn: Python 3 Pathlib!os.path module has lots of tools for working around these kinds of operating system-specific file system issues.

Tham khảo một tệp có đường dẫn và tên đầy đủos.path.join() to build a path string using the right kind of slash for the current operating system:

Trong Windows, một đường dẫn thư mục tệp đầy đủ bắt đầu bằng một ký tự ổ đĩa (c :, d :., v.v.). Trong Linux và OS-X, nó bắt đầu bằng "/", được gọi là gốc. Các thư mục được phân tách bằng một dấu gạch chéo "/". Bạn có thể tra cứu đường dẫn thư mục đầy đủ của tệp và tên tệp thông qua "thuộc tính" của nó. Xem cách nó được thực hiện trong Câu hỏi thường gặp này.os.path.join() and passing in each part of the path as a separate string is wordy and unintuitive.

Ngoài ra, bạn có thể tiền tố toàn bộ chuỗi tên tệp với điểm đánh dấu RawString "r": r'c: \ users \ narae \ Desktop \ alice.txt '. Bằng cách đó, mọi thứ trong chuỗi được hiểu là một nhân vật theo nghĩa đen và bạn không phải thoát khỏi mọi dấu gạch chéo ngược.os.path module are similarly annoying to use, developers often “forget” to use them even when they know better. This leads to a lot of cross-platform bugs and angry users.

Giải pháp tốt hơn: Python 3 Pathlib!

Python 3.4 đã giới thiệu một thư viện tiêu chuẩn mới để xử lý các tệp và đường dẫn được gọi là pathlib - và nó rất tuyệt!pathlib — and it’s great!pathlib — and it’s great!

Để sử dụng nó, bạn chỉ cần chuyển một đường dẫn hoặc tên tệp vào một đối tượng đường dẫn mới () bằng cách sử dụng dấu gạch chéo về phía trước và nó xử lý phần còn lại:

Lưu ý hai điều ở đây:

  1. Bạn nên sử dụng dấu gạch chéo về phía trước với các hàm pathlib. Đối tượng đường dẫn () sẽ chuyển đổi các dấu gạch chéo về phía trước thành đúng loại chém cho hệ điều hành hiện tại. Tốt đẹp!pathlib functions. The Path() object will convert forward slashes into the correct kind of slash for the current operating system. Nice!pathlib functions. The Path() object will convert forward slashes into the correct kind of slash for the current operating system. Nice!
  2. Nếu bạn muốn thêm vào đường dẫn, bạn có thể sử dụng / toán tử trực tiếp trong mã của mình. Nói lời tạm biệt để gõ ra os.path.join (a, b) nhiều lần./ operator directly in your code. Say goodbye to typing out os.path.join(a, b) over and over./ operator directly in your code. Say goodbye to typing out os.path.join(a, b) over and over.

Và nếu đó là tất cả các pathlib đã làm, nó sẽ là một bổ sung tốt đẹp cho Python - nhưng nó làm nhiều hơn nữa!pathlib did, it would be a nice addition to Python — but it does a lot more!pathlib did, it would be a nice addition to Python — but it does a lot more!

Ví dụ: chúng ta có thể đọc nội dung của tệp văn bản mà không cần phải mở và đóng tệp:

Pro-tip: Các ví dụ trước là lỗi vì tệp đã mở không bao giờ được đóng. Cú pháp này tránh được lỗi đó hoàn toàn.

Trên thực tế, Pathlib làm cho hầu hết các hoạt động tệp tiêu chuẩn nhanh chóng và dễ dàng:pathlib makes most standard file operations quick and easy:pathlib makes most standard file operations quick and easy:

Bạn thậm chí có thể sử dụng pathlib để chuyển đổi một cách rõ ràng đường dẫn UNIX thành đường dẫn có định dạng Windows:pathlib to explicitly convert a Unix path into a Windows-formatted path:pathlib to explicitly convert a Unix path into a Windows-formatted path:

Và nếu bạn thực sự muốn sử dụng dấu gạch chéo ngược trong mã của mình một cách an toàn, bạn có thể khai báo đường dẫn của mình vì Windows-smormatted và Pathlib có thể chuyển đổi nó để hoạt động trên hệ điều hành hiện tại:pathlib can convert it to work on the current operating system:pathlib can convert it to work on the current operating system:

Nếu bạn muốn có được ưa thích, bạn thậm chí có thể sử dụng pathlib để thực hiện những việc như giải quyết các đường dẫn tệp tương đối, đường dẫn chia sẻ mạng Parse và tạo tệp: // URL. Dưới đây, một ví dụ sẽ mở một tệp cục bộ trong trình duyệt web của bạn chỉ bằng hai dòng một mã:pathlib to do things like resolve relative file paths, parse network share paths and generate file:// urls. Here’s an example that will open a local file in your web browser with just two lines a code:pathlib to do things like resolve relative file paths, parse network share paths and generate file:// urls. Here’s an example that will open a local file in your web browser with just two lines a code:

Đây chỉ là một đỉnh nhỏ ở Pathlib. Nó là một sự thay thế tuyệt vời cho nhiều chức năng liên quan đến tệp khác nhau được sử dụng để phân tán xung quanh các mô-đun Python khác nhau. Kiểm tra nó ra!pathlib. It’s a great replacement for lots of different file-related functionality that used to be scattered around different Python modules. Check it out!pathlib. It’s a great replacement for lots of different file-related functionality that used to be scattered around different Python modules. Check it out!

Một trong những phiền toái của chương trình, Microsoft Windows sử dụng ký tự dấu gạch chéo ngược giữa các tên thư mục trong khi hầu hết mọi máy tính khác đều sử dụng dấu gạch chéo phía trước:

Nội dung chính ShowShowShow

  • Giải pháp sai: Xây dựng đường dẫn tệp bằng tay
  • Giải pháp cũ: Mô -đun Python từ OS.Path
  • Giải pháp tốt hơn: Python 3 Pathlib!
  • Tham khảo một tệp có đường dẫn và tên đầy đủ
  • Trong Windows, một đường dẫn thư mục tệp đầy đủ bắt đầu bằng một ký tự ổ đĩa (c :, d :., v.v.). Trong Linux và OS-X, nó bắt đầu bằng "/", được gọi là gốc. Các thư mục được phân tách bằng một dấu gạch chéo "/". Bạn có thể tra cứu đường dẫn thư mục đầy đủ của tệp và tên tệp thông qua "thuộc tính" của nó. Xem cách nó được thực hiện trong Câu hỏi thường gặp này.
  • Ngoài ra, bạn có thể tiền tố toàn bộ chuỗi tên tệp với điểm đánh dấu RawString "r": r'c: \ users \ narae \ Desktop \ alice.txt '. Bằng cách đó, mọi thứ trong chuỗi được hiểu là một nhân vật theo nghĩa đen và bạn không phải thoát khỏi mọi dấu gạch chéo ngược.
  • Xem ảnh chụp màn hình này và phần tiếp theo để biết cách làm việc với cài đặt CWD của bạn trong vỏ Python.
  • Làm thế nào để bạn hiển thị một con đường trong Python?
  • Làm cách nào để đặt đường dẫn tệp trong Python?
  • Làm cách nào để chỉ ra một đường dẫn tệp?
  • Con đường () làm gì trong Python?

Đây là một tai nạn của lịch sử máy tính đầu năm 1980. Phiên bản đầu tiên của MS-DOS đã sử dụng ký tự Slash chuyển tiếp để chỉ định các tùy chọn dòng lệnh. Khi Microsoft thêm hỗ trợ cho các thư mục trong MS-DOS 2.0, nhân vật chém phía trước đã được thực hiện để họ sử dụng dấu gạch chéo ngược. Ba mươi lăm năm sau, chúng tôi vẫn bị mắc kẹt với sự không tương thích này.

Nếu bạn muốn mã Python của mình hoạt động trên cả Windows và Mac/Linux, bạn sẽ cần phải giải quyết các loại vấn đề dành riêng cho nền tảng này. May mắn thay, Python 3 có một mô -đun mới có tên Pathlib làm cho làm việc với các tệp gần như không đau.pathlib that makes working with files nearly painless.pathlib that makes working with files nearly painless.pathlib that makes working with files nearly painless.

Hãy cùng xem nhanh các cách xử lý các đường dẫn tên tệp khác nhau và xem Pathlib có thể làm cho cuộc sống của bạn tốt hơn như thế nào!pathlib can make your life better!pathlib can make your life better!pathlib can make your life better!

Giải pháp sai: Xây dựng đường dẫn tệp bằng tay

Hãy nói rằng bạn có một thư mục dữ liệu chứa một tệp mà bạn muốn mở trong chương trình Python của mình:

Đây là cách sai để mã hóa nó trong Python:

Lưu ý rằng tôi đã mã hóa đường dẫn bằng cách sử dụng dấu gạch chéo về phía trước theo kiểu Unix kể từ khi tôi trên máy Mac. Điều này sẽ khiến người dùng Windows tức giận.

Về mặt kỹ thuật, mã này vẫn sẽ hoạt động trên Windows vì Python có một hack nơi nó sẽ nhận ra một trong hai loại chém khi bạn gọi Open () trên Windows. Nhưng thậm chí vẫn còn, bạn không nên phụ thuộc vào điều đó. Không phải tất cả các thư viện Python sẽ hoạt động nếu bạn sử dụng sai loại chém trên hệ điều hành sai - đặc biệt nếu chúng giao tiếp với các chương trình hoặc thư viện bên ngoài.open() on Windows. But even still, you shouldn’t depend on that. Not all Python libraries will work if you use wrong kind of slash on the wrong operating system — especially if they interface with external programs or libraries.open() on Windows. But even still, you shouldn’t depend on that. Not all Python libraries will work if you use wrong kind of slash on the wrong operating system — especially if they interface with external programs or libraries.open() on Windows. But even still, you shouldn’t depend on that. Not all Python libraries will work if you use wrong kind of slash on the wrong operating system — especially if they interface with external programs or libraries.

Và sự hỗ trợ của Python, để trộn các loại chém là một hack chỉ có Windows không hoạt động ngược lại. Sử dụng dấu gạch chéo ngược trong mã sẽ hoàn toàn thất bại trên máy Mac:

Vì tất cả những lý do này và hơn thế nữa, viết mã với chuỗi đường dẫn được mã hóa cứng là loại điều sẽ khiến các lập trình viên khác nhìn bạn với sự nghi ngờ lớn. Nói chung, bạn nên cố gắng tránh nó.

Giải pháp cũ: Mô -đun Python từ OS.Path

Mô-đun Python sườn OS.PATH có rất nhiều công cụ để làm việc xung quanh các loại vấn đề hệ thống tập tin cụ thể của hệ điều hành.os.path module has lots of tools for working around these kinds of operating system-specific file system issues.os.path module has lots of tools for working around these kinds of operating system-specific file system issues.os.path module has lots of tools for working around these kinds of operating system-specific file system issues.

Bạn có thể sử dụng Os.Path.Join () để xây dựng chuỗi đường dẫn bằng cách sử dụng đúng loại chém cho hệ điều hành hiện tại:os.path.join() to build a path string using the right kind of slash for the current operating system:os.path.join() to build a path string using the right kind of slash for the current operating system:os.path.join() to build a path string using the right kind of slash for the current operating system:

Mã này sẽ hoạt động hoàn hảo trên cả Windows hoặc Mac. Vấn đề là nó là một nỗi đau để sử dụng. Viết ra os.path.join () và đi qua từng phần của đường dẫn dưới dạng một chuỗi riêng biệt và không trực quan.os.path.join() and passing in each part of the path as a separate string is wordy and unintuitive.os.path.join() and passing in each part of the path as a separate string is wordy and unintuitive.os.path.join() and passing in each part of the path as a separate string is wordy and unintuitive.

Vì hầu hết các chức năng trong mô -đun OS.Path cũng gây khó chịu tương tự khi sử dụng, các nhà phát triển thường quên quên sử dụng chúng ngay cả khi họ biết rõ hơn. Điều này dẫn đến rất nhiều lỗi đa nền tảng và người dùng tức giận.os.path module are similarly annoying to use, developers often “forget” to use them even when they know better. This leads to a lot of cross-platform bugs and angry users.os.path module are similarly annoying to use, developers often “forget” to use them even when they know better. This leads to a lot of cross-platform bugs and angry users.os.path module are similarly annoying to use, developers often “forget” to use them even when they know better. This leads to a lot of cross-platform bugs and angry users.

Giải pháp tốt hơn: Python 3 Pathlib!

Python 3.4 đã giới thiệu một thư viện tiêu chuẩn mới để xử lý các tệp và đường dẫn được gọi là pathlib - và nó rất tuyệt!pathlib — and it’s great!pathlib — and it’s great!pathlib — and it’s great!

Để sử dụng nó, bạn chỉ cần chuyển một đường dẫn hoặc tên tệp vào một đối tượng đường dẫn mới () bằng cách sử dụng dấu gạch chéo về phía trước và nó xử lý phần còn lại:

Lưu ý hai điều ở đây:

  1. Bạn nên sử dụng dấu gạch chéo về phía trước với các hàm pathlib. Đối tượng đường dẫn () sẽ chuyển đổi các dấu gạch chéo về phía trước thành đúng loại chém cho hệ điều hành hiện tại. Tốt đẹp!pathlib functions. The Path() object will convert forward slashes into the correct kind of slash for the current operating system. Nice!pathlib functions. The Path() object will convert forward slashes into the correct kind of slash for the current operating system. Nice!pathlib functions. The Path() object will convert forward slashes into the correct kind of slash for the current operating system. Nice!
  2. Nếu bạn muốn thêm vào đường dẫn, bạn có thể sử dụng / toán tử trực tiếp trong mã của mình. Nói lời tạm biệt để gõ ra os.path.join (a, b) nhiều lần./ operator directly in your code. Say goodbye to typing out os.path.join(a, b) over and over./ operator directly in your code. Say goodbye to typing out os.path.join(a, b) over and over./ operator directly in your code. Say goodbye to typing out os.path.join(a, b) over and over.

Và nếu đó là tất cả các pathlib đã làm, nó sẽ là một bổ sung tốt đẹp cho Python - nhưng nó làm nhiều hơn nữa!pathlib did, it would be a nice addition to Python — but it does a lot more!pathlib did, it would be a nice addition to Python — but it does a lot more!pathlib did, it would be a nice addition to Python — but it does a lot more!

Ví dụ: chúng ta có thể đọc nội dung của tệp văn bản mà không cần phải mở và đóng tệp:

Pro-tip: Các ví dụ trước là lỗi vì tệp đã mở không bao giờ được đóng. Cú pháp này tránh được lỗi đó hoàn toàn.

Trên thực tế, Pathlib làm cho hầu hết các hoạt động tệp tiêu chuẩn nhanh chóng và dễ dàng:pathlib makes most standard file operations quick and easy:pathlib makes most standard file operations quick and easy:pathlib makes most standard file operations quick and easy:

Bạn thậm chí có thể sử dụng pathlib để chuyển đổi một cách rõ ràng đường dẫn UNIX thành đường dẫn có định dạng Windows:pathlib to explicitly convert a Unix path into a Windows-formatted path:pathlib to explicitly convert a Unix path into a Windows-formatted path:pathlib to explicitly convert a Unix path into a Windows-formatted path:

Và nếu bạn thực sự muốn sử dụng dấu gạch chéo ngược trong mã của mình một cách an toàn, bạn có thể khai báo đường dẫn của mình vì Windows-smormatted và Pathlib có thể chuyển đổi nó để hoạt động trên hệ điều hành hiện tại:pathlib can convert it to work on the current operating system:pathlib can convert it to work on the current operating system:pathlib can convert it to work on the current operating system:

Nếu bạn muốn có được ưa thích, bạn thậm chí có thể sử dụng pathlib để thực hiện những việc như giải quyết các đường dẫn tệp tương đối, đường dẫn chia sẻ mạng Parse và tạo tệp: // URL. Dưới đây, một ví dụ sẽ mở một tệp cục bộ trong trình duyệt web của bạn chỉ bằng hai dòng một mã:pathlib to do things like resolve relative file paths, parse network share paths and generate file:// urls. Here’s an example that will open a local file in your web browser with just two lines a code:pathlib to do things like resolve relative file paths, parse network share paths and generate file:// urls. Here’s an example that will open a local file in your web browser with just two lines a code:pathlib to do things like resolve relative file paths, parse network share paths and generate file:// urls. Here’s an example that will open a local file in your web browser with just two lines a code:

Đây chỉ là một đỉnh nhỏ ở Pathlib. Nó là một sự thay thế tuyệt vời cho nhiều chức năng liên quan đến tệp khác nhau được sử dụng để phân tán xung quanh các mô-đun Python khác nhau. Kiểm tra nó ra!pathlib. It’s a great replacement for lots of different file-related functionality that used to be scattered around different Python modules. Check it out!pathlib. It’s a great replacement for lots of different file-related functionality that used to be scattered around different Python modules. Check it out!pathlib. It’s a great replacement for lots of different file-related functionality that used to be scattered around different Python modules. Check it out!

Trên trang này: Open (), Path Path, CWD ('Thư mục làm việc hiện tại'), tiền tố R 'RAW String', OS.GetCwd (), Os.Chdir ().

Tham khảo một tệp có đường dẫn và tên đầy đủ

Như đã thấy trong các hướng dẫn #12 và #13, bạn có thể tham khảo một tệp cục bộ trong Python bằng cách sử dụng đường dẫn đầy đủ của tệp và tên tệp. Dưới đây, bạn đang mở một tệp để đọc:
& nbsp;
>>> myfile = open('C:/Users/narae/Desktop/alice.txt')   # Windows
>>> mytxt = myfile.read()
>>> myfile.close()
& nbsp;
>>> myfile = open('C:/Users/narae/Desktop/alice.txt')   # Windows
>>> mytxt = myfile.read()
>>> myfile.close()
>>> myfile = open('/Users/narae/Desktop/alice.txt')     # Mac and Linux
>>> mytxt = myfile.read()
>>> myfile.close()

Trong Windows, một đường dẫn thư mục tệp đầy đủ bắt đầu bằng một ký tự ổ đĩa (c :, d :., v.v.). Trong Linux và OS-X, nó bắt đầu bằng "/", được gọi là gốc. Các thư mục được phân tách bằng một dấu gạch chéo "/". Bạn có thể tra cứu đường dẫn thư mục đầy đủ của tệp và tên tệp thông qua "thuộc tính" của nó. Xem cách nó được thực hiện trong Câu hỏi thường gặp này.

Tham khảo một tệp trong Windows
  • Trong Windows, có một vài cách bổ sung để tham khảo một tệp. Đó là bởi vì đường dẫn tập tin Windows sử dụng dấu gạch chéo ngược "\" thay vì chém. Python cho phép sử dụng cả hai trong hệ thống Windows, nhưng có một vài cạm bẫy cần chú ý. Để tổng hợp chúng:RECOMMENDED.RECOMMENDED.RECOMMENDED.
  • Python cho phép bạn sử dụng dấu gạch chéo kiểu OS-X/Linux "/" ngay cả trong Windows. Do đó, bạn có thể gọi tệp là 'C: /Users/narae/desktop/alice.txt'. KHUYẾN KHÍCH.backslash, because it is a special character in Python, you must remember to escape every instance: 'C:\\Users\\narae\\Desktop\\alice.txt'backslash, because it is a special character in Python, you must remember to escape every instance: 'C:\\Users\\narae\\Desktop\\alice.txt'backslash, because it is a special character in Python, you must remember to escape every instance: 'C:\\Users\\narae\\Desktop\\alice.txt'
  • Nếu sử dụng Backslash, vì nó là một nhân vật đặc biệt trong Python, bạn phải nhớ thoát khỏi mọi trường hợp: 'C: \\ users \\ narae \\ Desktop \\ alice.txt'rawstring marker "r": r'C:\Users\narae\Desktop\alice.txt'. That way, everything in the string is interpreted as a literal character, and you don't have to escape every backslash. rawstring marker "r": r'C:\Users\narae\Desktop\alice.txt'. That way, everything in the string is interpreted as a literal character, and you don't have to escape every backslash. rawstring marker "r": r'C:\Users\narae\Desktop\alice.txt'. That way, everything in the string is interpreted as a literal character, and you don't have to escape every backslash.

Ngoài ra, bạn có thể tiền tố toàn bộ chuỗi tên tệp với điểm đánh dấu RawString "r": r'c: \ users \ narae \ Desktop \ alice.txt '. Bằng cách đó, mọi thứ trong chuỗi được hiểu là một nhân vật theo nghĩa đen và bạn không phải thoát khỏi mọi dấu gạch chéo ngược.

Phím tắt tên tệp và CWD (thư mục làm việc hiện tại)

Vì vậy, sử dụng đường dẫn thư mục đầy đủ và tên tệp luôn hoạt động; Bạn nên sử dụng phương pháp này. Tuy nhiên, bạn có thể chỉ thấy các tệp được gọi bằng tên của chúng, ví dụ: 'Alice.txt' trong Python. Nó được thực hiện như thế nào?Current Working Directory (CWD) is crucial here. You can think of it as the folder your Python is operating inside at the moment. So far we have been using the absolute path, which begins from the topmost directory. But if your file reference does not start from the top (e.g., Current Working Directory (CWD) is crucial here. You can think of it as the folder your Python is operating inside at the moment. So far we have been using the absolute path, which begins from the topmost directory. But if your file reference does not start from the top (e.g., Current Working Directory (CWD) is crucial here. You can think of it as the folder your Python is operating inside at the moment. So far we have been using the absolute path, which begins from the topmost directory. But if your file reference does not start from the top (e.g.,

Khái niệm về thư mục làm việc hiện tại (CWD) là rất quan trọng ở đây. Bạn có thể nghĩ về nó như là thư mục Python của bạn đang hoạt động bên trong vào lúc này. Cho đến nay chúng tôi đã sử dụng đường dẫn tuyệt đối, bắt đầu từ thư mục trên cùng. Nhưng nếu tham chiếu tệp của bạn không bắt đầu từ đầu (ví dụ:

'Alice.txt'

'ling1330/alice.txt'

Thìrelative path"). relative path"). relative path").

), Python giả định rằng nó bắt đầu trong CWD (một "đường dẫn tương đối").

  • Điều này có nghĩa là một tham chiếu chỉ tên sẽ chỉ thành công khi tệp nằm trong CWD của bạn. Nhưng hãy nhớ rằng CWD của bạn có thể thay đổi. Ngoài ra, Python của bạn có cài đặt CWD ban đầu khác nhau tùy thuộc vào việc bạn đang làm việc với tập lệnh Python hay trong môi trường vỏ.Python script: When you execute your script, your CWD is set to the directory where your script is. Therefore, you can refer to a file in a script by its name only provided that the file and the script are in the same directory. An example:
    myfile = open('alice.txt')  # alice.txt is in the same dir as foo.py
    mytxt = myfile.read()
    myfile.close()
    foo.py 
    
    Python script: When you execute your script, your CWD is set to the directory where your script is. Therefore, you can refer to a file in a script by its name only provided that the file and the script are in the same directory. An example:
    myfile = open('alice.txt')  # alice.txt is in the same dir as foo.py
    mytxt = myfile.read()
    myfile.close()
    foo.py 
    
    Python script:
    When you execute your script, your CWD is set to the directory where your script is. Therefore, you can refer to a file in a script by its name only provided that the file and the script are in the same directory. An example:
    myfile = open('alice.txt')  # alice.txt is in the same dir as foo.py
    mytxt = myfile.read()
    myfile.close()
    foo.py 
    
  • Trong tập lệnh Python: Khi bạn thực thi tập lệnh của mình, CWD của bạn được đặt thành thư mục nơi tập lệnh của bạn. Do đó, bạn có thể tham khảo một tệp trong tập lệnh bằng tên của nó chỉ với điều kiện tệp và tập lệnh nằm trong cùng một thư mục. Một ví dụ:Python shell: In your shell, the initial CWD setting varies by system. In Windows, the default location is often 'C:/program Files (x86)/Python35-32' (which is inconvenient -- see this "Basic Configurations" page or this FAQ for how to change it). In OS-X, it is usually '/Users/username/Documents' where username is your user ID. (Mac users should see this FAQ for how to change your setting.) Unless your file happens to be in your CWD, you have two options: Python shell: In your shell, the initial CWD setting varies by system. In Windows, the default location is often 'C:/program Files (x86)/Python35-32' (which is inconvenient -- see this "Basic Configurations" page or this FAQ for how to change it). In OS-X, it is usually '/Users/username/Documents' where username is your user ID. (Mac users should see this FAQ for how to change your setting.) Unless your file happens to be in your CWD, you have two options: Python shell:
    In your shell, the initial CWD setting varies by system. In Windows, the default location is often 'C:/program Files (x86)/Python35-32' (which is inconvenient -- see this "Basic Configurations" page or this FAQ for how to change it). In OS-X, it is usually '/Users/username/Documents' where username is your user ID. (Mac users should see this FAQ for how to change your setting.) Unless your file happens to be in your CWD, you have two options:
    1. Trong vỏ Python: Trong vỏ của bạn, cài đặt CWD ban đầu thay đổi theo hệ thống. Trong Windows, vị trí mặc định thường là 'C:/Tệp chương trình (x86)/python35-32' (không bất tiện-xem trang "cấu hình cơ bản" này hoặc Câu hỏi thường gặp về cách thay đổi nó). Trong OS-X, thường là '/người dùng/tên người dùng/tài liệu' trong đó tên người dùng là ID người dùng của bạn. (Người dùng Mac sẽ xem Câu hỏi thường gặp này về cách thay đổi cài đặt của bạn.)
    2. Thay đổi CWD của bạn thành thư mục của tệp hoặc
Sao chép hoặc chuyển tập tin của bạn vào CWD của bạn. (Không được khuyến nghị, vì CWD của Shell của bạn có thể thay đổi.)

Xem ảnh chụp màn hình này và phần tiếp theo để biết cách làm việc với cài đặt CWD của bạn trong vỏ Python.

Tìm kiếm và thay đổi CWD
& nbsp;
>>> myfile = open('C:/Users/narae/Desktop/alice.txt')   # Windows
>>> mytxt = myfile.read()
>>> myfile.close()
>>> myfile = open('/Users/narae/Desktop/alice.txt')     # Mac and Linux
>>> mytxt = myfile.read()
>>> myfile.close()

Làm thế nào để bạn hiển thị một con đường trong Python?

Đặt đường dẫn tệp trong Python....

Sử dụng \ ký tự để chỉ định đường dẫn tệp trong Python ..

Sử dụng các chuỗi chữ RAW để chỉ định đường dẫn tệp trong Python ..

Sử dụng hàm OS.Path () để chỉ định đường dẫn tệp trong Python ..

Sử dụng hàm pathlib.path () để chỉ định đường dẫn tệp trong Python ..

Làm cách nào để đặt đường dẫn tệp trong Python?

Để lấy đường dẫn tệp từ đầu vào của người dùng:....

Sử dụng hàm input () để lấy đường dẫn tệp làm đầu vào từ người dùng ..

Sử dụng hệ điều hành.đường dẫn.Phương thức tồn tại () để kiểm tra xem đường dẫn được chỉ định có tồn tại không ..

Làm cách nào để chỉ ra một đường dẫn tệp?

Để viết một đường dẫn di chuyển vào một thư mục, chúng tôi chỉ định tên thư mục, theo sau là một dấu gạch chéo phía trước, sau đó là tên tệp.specify the folder name, followed by a forward slash, then the file name.specify the folder name, followed by a forward slash, then the file name.specify the folder name, followed by a forward slash, then the file name.

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.return the directory name from the path given. This function returns the name from the path except the path name.return the directory name from the path given. This function returns the name from the path except the path name.