Làm thế nào để bạn xử lý một dấu gạch chéo trong python?
Show Vì vậy, trường hợp duy nhất mà điều này sẽ tạo ra sự khác biệt là khi gọi một >>> hệ điều hành. lstat('foo') >>> đường dẫn. Đường dẫn ('foo'). lstat() Nhưng bạn cũng có thể gọi giải quyết() một cách rõ ràng nếu bạn muốn hành động trên >>> đường dẫn. Đường dẫn ('foo/'). giải quyết(). lstat() Tôi đang xem xét các trường hợp khác? Trân trọng antoine Như đã nêu trước đó, biểu thức chính quy sử dụng ký tự gạch chéo ngược ("\") để biểu thị các dạng đặc biệt hoặc để cho phép sử dụng các ký tự đặc biệt mà không cần gọi ý nghĩa đặc biệt của chúng. Điều này mâu thuẫn với việc Python sử dụng cùng một ký tự cho cùng một mục đích trong chuỗi ký tự Giả sử bạn muốn viết RE khớp với chuỗi "\ section" có thể tìm thấy trong tệp LATEX. Để tìm ra những gì cần viết trong mã chương trình, hãy bắt đầu với chuỗi mong muốn được khớp. Tiếp theo, bạn phải thoát khỏi mọi dấu gạch chéo ngược và các siêu ký tự khác bằng cách đặt trước chúng bằng dấu gạch chéo ngược, dẫn đến chuỗi "\\section". Chuỗi kết quả phải được chuyển tới re. compile() phải là 2. Tuy nhiên, để thể hiện điều này dưới dạng chuỗi ký tự Python, cả hai dấu gạch chéo ngược phải được thoát lại 3Chuỗi văn bản được so khớp 2Dấu gạch chéo ngược thoát cho re. biên dịch 5 Dấu gạch chéo ngược đã thoát cho một chuỗi ký tự Nói tóm lại, để khớp với dấu gạch chéo ngược theo nghĩa đen, người ta phải viết '\\\\' dưới dạng chuỗi RE, vì biểu thức chính quy phải là "\\" và mỗi dấu gạch chéo ngược phải được biểu thị là "\\" bên trong Python thông thường . Trong các RE có dấu gạch chéo ngược lặp đi lặp lại, điều này dẫn đến nhiều dấu gạch chéo ngược lặp đi lặp lại khiến chuỗi kết quả trở nên khó hiểu Giải pháp là sử dụng ký hiệu chuỗi thô của Python cho các biểu thức chính quy; . Các biểu thức chính quy thông thường sẽ được thể hiện bằng mã Python bằng cách sử dụng ký hiệu chuỗi thô này bạn có ý tưởng đúng – trong ký tự chuỗi python, dấu gạch chéo là một lối thoát, vì vậy “\n” là một dòng mới Để gỡ lỗi này, hãy thử đặt tên tệp trước rồi in nó
Vì vậy, đường dẫn Windows là một thách thức “Cách đúng đắn” để xử lý các đường dẫn tệp là sử dụng thư viện – ví dụ, hãy xem mô-đun pathlib Nhưng cách nhanh và bẩn là sử dụng chuỗi "thô"
Chữ 'r' phía trước dấu ngoặc kép có nghĩa là "chuỗi thô", có nghĩa là không hiểu dấu gạch chéo là dấu gạch chéo, chỉ cần giữ nguyên như vậy Tóm lược. trong hướng dẫn này, bạn sẽ tìm hiểu về ký tự dấu gạch chéo ngược trong Python như một phần của ký tự thứ tự đặc biệt hoặc để thoát ký tự trong chuỗi Giới thiệu về dấu gạch chéo ngược PythonTrong Python, dấu gạch chéo ngược( 1) là một ký tự đặc biệt. Nếu bạn sử dụng dấu gạch chéo ngược trước một ký tự khác, nó sẽ thay đổi ý nghĩa của ký tự đó Ví dụ, 2 là một ký tự chữ. Nhưng nếu bạn sử dụng ký tự gạch chéo ngược ở phía trước chữ cái 2, nó sẽ trở thành ký tự tab ( 4) Nói chung, dấu gạch chéo ngược có hai mục đích chính Đầu tiên, ký tự gạch chéo ngược là một phần của chuỗi ký tự đặc biệt, chẳng hạn như ký tự tab 4 hoặc ký tự dòng mới 6 Ví dụ sau in một chuỗi có ký tự xuống dòng ________số 8đầu ra
\n là một ký tự đơn, không phải hai ký tự. Ví dụ 0Thứ hai, dấu gạch chéo ngược ( 1) thoát khỏi các ký tự đặc biệt khác. Ví dụ: nếu bạn có một chuỗi có một trích dẫn bên trong một chuỗi trích dẫn đơn như chuỗi sau, bạn cần sử dụng dấu gạch chéo ngược để thoát khỏi ký tự trích dẫn đơn 2đầu ra 3Dấu gạch chéo ngược trong chuỗi fPEP-498 chỉ định rằng chuỗi f không thể chứa ký tự dấu gạch chéo ngược như một phần của biểu thức bên trong dấu ngoặc nhọn 8 Ví dụ sau sẽ dẫn đến lỗi 5Lỗi 6Để khắc phục điều này, bạn cần nối các chuỗi trong danh sách 9 trước khi đặt chúng vào dấu ngoặc nhọn 8đầu ra 9Dấu gạch chéo ngược trong chuỗi thôCác chuỗi thô coi ký tự dấu gạch chéo ngược (_______21) là ký tự chữ. Ví dụ sau coi ký tự gạch chéo ngược 1 là ký tự chữ, không phải ký tự đặc biệt |