Chỉnh sửa: Vấn đề thực sự là cách
5 hoạt động với Danh sách & Chuỗi. Nó in biểu diễn của chuỗi, không phải chuỗi, biểu diễn của một chuỗi chỉ chứa dấu gạch chéo ngược là Hey, whats up?
6. Vì vậy, Hey, whats up?
7 thực sự đang tìm thấy chính xác dấu gạch chéo ngược duy nhất, nhưng Hey, whats up?
5 không in nó như bạn mong đợi. Thử:: The problem is actually how Hey, whats up?
Hey, whats up?
5 works with lists & strings. It prints the representation of the string, not the string itself, the representation of a string containing just a backslash is Hey, whats up?
6. So Hey, whats up?
7 is actually finding the single backslash correctly, but Hey, whats up?
5 isn't printing it as you'd expect. Try:>>> print[re.findall[r'\\',"i am \\nit"][0]]
\
.
Tiền tố
Hey, whats up?
9 trên một chuỗi có nghĩa là chuỗi ở chế độ "RAW", nghĩa là, s = 'Hey, what's up?'
print[s]
0 không được coi là ký tự đặc biệt [nó không liên quan gì đến "regex"].Tuy nhiên,
s = 'Hey, what's up?'
print[s]
1 không hoạt động, vì bạn không thể kết thúc một chuỗi thô bằng dấu gạch chéo ngược, nó được nêu trong các tài liệu:
Ngay cả trong một chuỗi thô, các trích dẫn chuỗi có thể được thoát ra bằng dấu gạch chéo ngược, nhưng dấu gạch chéo ngược vẫn còn trong chuỗi; Ví dụ: r "\" "là một chuỗi hợp lệ bao gồm hai ký tự: dấu gạch chéo ngược và báo giá kép; r" \ "không phải là một chuỗi hợp lệ theo nghĩa đen [thậm chí một chuỗi thô không thể kết thúc trong một số lượng ngược lẻ]. Cụ thể, một chuỗi thô không thể kết thúc trong một dấu gạch chéo ngược [vì dấu gạch chéo ngược sẽ thoát khỏi ký tự trích dẫn sau].
Nhưng bạn thực sự có thể sử dụng một chuỗi không raw để có được một dấu gạch chéo ngược duy nhất:
s = 'Hey, what's up?'
print[s]
2. Trình tự thoát cho phép bạn bao gồm các ký tự đặc biệt trong chuỗi. Để làm điều này, chỉ cần thêm một dấu gạch chéo ngược [
0] trước khi nhân vật bạn muốn trốn thoát.s = 'Hey, what's up?'
print[s]
Ví dụ, hãy tưởng tượng bạn đã khởi tạo một chuỗi với các trích dẫn đơn:
s = 'Hey, whats up?'
print[s]
Output:
Hey, whats up?
Nhưng nếu bạn bao gồm một dấu nháy đơn mà không thoát khỏi nó, thì bạn sẽ gặp lỗi:
s = 'Hey, what's up?'
print[s]
Output:
File "main.py", line 1
s = 'Hey, what's up?'
^
SyntaxError: invalid syntax
Để khắc phục điều này, chỉ cần thoát khỏi dấu nháy đơn:
s = 'Hey, what\'s up?'
print[s]
Để thêm các dòng mới vào chuỗi của bạn, hãy sử dụng
s = 'Hey, what's up?'
print[s]
4:print["Multiline strings\ncan be created\nusing escape sequences."]
Output:
Multiline strings
can be created
using escape sequences.
Một điều quan trọng cần nhớ là, nếu bạn muốn đưa một ký tự dấu gạch chéo ngược trong một chuỗi, bạn sẽ cần phải thoát khỏi điều đó. Ví dụ: nếu bạn muốn in một đường dẫn thư mục trong Windows, bạn sẽ cần thoát từng dấu gạch chéo ngược trong chuỗi:
print["C:\\Users\\Pat\\Desktop"]
Output:
C:\Users\Pat\Desktop
Dây thô
Một chuỗi thô có thể được sử dụng bằng cách đặt tiền tố chuỗi với
Hey, whats up?
9 hoặc s = 'Hey, what's up?'
print[s]
6, cho phép đưa vào dấu gạch chéo ngược mà không cần phải thoát chúng. Ví dụ:s = 'Hey, whats up?'
print[s]
0Output:
s = 'Hey, whats up?'
print[s]
1Nhưng hãy nhớ rằng các dấu gạch chéo không được phân giải ở cuối chuỗi thô sẽ gây ra và lỗi:
s = 'Hey, whats up?'
print[s]
2Output:
s = 'Hey, whats up?'
print[s]
3Trình tự thoát phổ biến
\ | Backslash [ 0] |
' | Trích dẫn đơn [ 8] |
" | Báo giá kép [ 9] |
\N | ASCII LineFeed [thêm Newline] |
\ b | ASCII backspace |
Một danh sách đầy đủ các chuỗi thoát có thể được tìm thấy ở đây trong các tài liệu Python.
Học mã miễn phí. Chương trình giảng dạy nguồn mở của Freecodecamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu
Các ký tự hoặc trình tự thoát là các ký tự bất hợp pháp cho Python và không bao giờ được in như một phần của đầu ra. Khi Backslash được sử dụng trong lập trình Python, nó cho phép chương trình thoát khỏi các ký tự tiếp theo.
Sau đây sẽ là cú pháp cho chuỗi thoát
Cú pháp:
s = 'Hey, whats up?'
print[s]
4Giải trình:
Ở đây, nhân vật thoát có thể là t, n, e hoặc chao đảo chính nó.
Các loại trình tự thoát
Các ký tự thoát có thể được phân loại là các ký tự không thể in khi dấu gạch chéo ngược trước chúng. Các câu lệnh in không in ký tự thoát.
Đây là danh sách các nhân vật thoát
\ | Trích dẫn đơn |
\\ | Dấu vết chéo ngược |
\N | Dòng mới |
\ r | Vận chuyển trở lại |
\ t | Chuyển hướng |
\ b | Backspace |
\ f | Thức ăn dạng |
\ ooo | Tương đương bát phân |
\ XHHH | Tương đương thập lục phân |
Ví dụ sử dụng các ký tự thoát khác nhau
\N | Dòng mới | \ r print[txt] | Vận chuyển trở lại |
\\ | Dấu vết chéo ngược | \N print[txt] | Dòng mới |
\ r | Vận chuyển trở lại This is done by printing in backslash with the hexadecimal equivalent in double quotes. | \ t print[txt] | Chuyển hướng |
\ ooo | Tương đương bát phân It is done by printing in a backslash with three octal equivalents in double quotes. | \ XHHH print[txt] | Tương đương thập lục phân |
\ b | Backspace “b” here represents backslash. | \ f print[txt] | Chuyển hướng |
\ f | Thức ăn dạng | \ ooo print[txt] | Chuyển hướng |
\ r | Vận chuyển trở lại | \ t print[txt] | Chuyển hướng |
\ | Trích dẫn đơn | \\ print[txt] | Dấu vết chéo ngược |
\N
Dòng mới
\ r
Cú pháp:
s = 'Hey, whats up?'
print[s]
5Giải trình:
Ở đây, nhân vật thoát có thể là t, n, e hoặc chao đảo chính nó.
Các loại trình tự thoát
s = 'Hey, whats up?'
print[s]
6Output:
s = 'Hey, whats up?'
print[s]
7Explanation:
Các ký tự thoát có thể được phân loại là các ký tự không thể in khi dấu gạch chéo ngược trước chúng. Các câu lệnh in không in ký tự thoát.
Đây là danh sách các nhân vật thoát
Mã số
Sự mô tả
\
Các loại trình tự thoát
s = 'Hey, whats up?'
print[s]
8Output:
s = 'Hey, whats up?'
print[s]
9Explanation:
Các ký tự thoát có thể được phân loại là các ký tự không thể in khi dấu gạch chéo ngược trước chúng. Các câu lệnh in không in ký tự thoát.
Đây là danh sách các nhân vật thoát
Mã số
Cú pháp cho hàm CHR được biểu diễn dưới đây: -
Cú pháp: -
Hey, whats up?
0Tab có ký tự Unicode 9. Sử dụng lệnh Python sau để đến ký tự Unicode như được hiển thị bên dưới: -
Mã Python:
Hey, whats up?
1Output:
Hey, whats up?
2Explanation:
Mã trên cung cấp ký tự Unicode cho tab. Nó có thể được sử dụng như một đầu vào cho hàm CHR. Việc sử dụng CHR [9] sẽ cho phép chúng tôi tạo ra một thay thế cho chuỗi thoát khỏi Tab.
Mã này là một ví dụ về cách sử dụng CHR [9], như được hiển thị bên dưới:
Mã Python:
Hey, whats up?
3Output:
Hey, whats up?
4Mã trên cung cấp ký tự Unicode cho tab. Nó có thể được sử dụng như một đầu vào cho hàm CHR. Việc sử dụng CHR [9] sẽ cho phép chúng tôi tạo ra một thay thế cho chuỗi thoát khỏi Tab.
Summary:
- Mã này là một ví dụ về cách sử dụng CHR [9], như được hiển thị bên dưới:
- Chức năng trên, tuy nhiên, không được dùng cho phiên bản 3 trở lên.
- Backslash cũng được coi là một nhân vật đặc biệt.
- Để tạo ra một chuỗi thoát, bắt đầu bằng một dấu gạch chéo ngược, theo sau là nhân vật bất hợp pháp.
- Các ví dụ về các chuỗi thoát hiểm bao gồm \ \ bv, \ \ t, \ \ n, lần lượt là
- Cấm \ t, cho phép chèn một không gian hoặc tab giữa hai từ. Nó đóng một vai trò tương tự như khóa không gian có trên bàn phím.
- \ \ T, được sử dụng khi lập trình viên muốn thêm không gian vào một chuỗi tại một vị trí chính xác.