Hướng dẫn what is an escape code in python? - mã thoát trong python là gì?

trừu tượng

Trình tự thoát là một chuỗi các ký tự, khi được sử dụng bên trong một ký tự hoặc chuỗi, không tự đại diện nhưng được chuyển đổi thành một ký tự hoặc một loạt các ký tự có thể khó hoặc không thể diễn tả trực tiếp, như Newline (\ n), tab (\ t), v.v. is a sequence of characters that, when used inside a character or string, does not represent itself but is converted into another character or series of characters that may be difficult or impossible to express directly, like newline (\n), tab (\t), and so on.

Trong chuỗi thoát, một ký tự được đi trước bởi một dấu gạch chéo ngược (\\) theo sau là nhân vật bạn muốn đại diện cho dòng mới. Chúng ta có một cái gì đó như thế này \\\ n.(\\) followed by the character you want to represent for the new line. We have something like this \\\n.

Nhân vật này phục vụ như một trình khởi tạo trình tự thoát, và mỗi nhân vật (một hoặc nhiều) theo sau nó được coi là một chuỗi thoát.

Phạm vi của bài viết

  • Bài viết này sẽ chỉ cho bạn cách sử dụng trình tự thoát trong Python. Bạn sẽ nhận được hầu hết sự hiểu biết về trình tự thoát với đầu ra mã thích hợp.
  • Trong bài viết này, bạn sẽ tìm hiểu làm thế nào chúng ta có thể dịch một ký tự thành một ký tự khác hoặc một chuỗi các ký tự có thể khó hoặc không thể đại diện trực tiếp.

Giới thiệu về trình tự thoát trong Python

Giả sử bạn có chuỗi chứa một dấu gạch chéo ngược đôi (\\\\\) và bạn muốn in chuỗi bằng một dấu gạch chéo ngược đôi, nhưng không thể in trực tiếp. Vì vậy, đây là vai trò của trình tự thoát.(\\\\), and you want to print the string with a double backslash, but it is impossible to print it directly. So here comes the role of escape sequences.

Thứ nhất, hiểu trình tự. Một chuỗi chỉ là một tập hợp gồm hai hoặc nhiều ký tự và một lối thoát trong đó chuỗi bắt đầu bằng dấu gạch chéo ngược (\\) và các ký tự khác trong tập hợp theo dấu gạch chéo ngược đó.(\\) and other characters in the set follow that backslash.

Trình tự thoát là một chuỗi các ký tự, khi được sử dụng bên trong một ký tự hoặc chuỗi, không tự đại diện nhưng được chuyển đổi thành một ký tự hoặc một loạt các ký tự khác. Vì vậy, các chuỗi thoát được hình thành bằng hai điều: thứ nhất là dấu gạch chéo ngược (\\) và thứ hai là tập hợp của một hoặc nhiều ký tự theo dấu gạch chéo ngược đó (\\).(\\), and the second is the set of one or more characters following that backslash (\\).

Danh sách trình tự thoát có sẵn trong Python

Trình tự thoátNghĩa
\Trích dẫn duy nhất
\\Báo giá kép
\\Dấu vết chéo ngược
\NDòng mới
\ rVận chuyển trở lại
\ tTab ngang
\ bBackspace
\ fThức ăn dạng
\ vTab dọc
\ 0Nhân vật null
\ N {name}Cơ sở dữ liệu ký tự Unicode có tên Tra cứu
\ uxxxxxxxxxKý tự unicode với giá trị hex 16 bit
\ UxxxxxxxxxKý tự unicode với giá trị hex 32 bit
\ 000Nhân vật có giá trị bát phân ooo
\ XHHNhân vật có giá trị hex hh

Cách thoát khỏi các trích dẫn đơn trong Python

Như chúng ta đã biết, nếu chúng ta sử dụng trực tiếp một trích dẫn bên trong chuỗi và chuỗi đó được đóng bên trong một cặp trích dẫn đơn, thì trình thông dịch sẽ bị nhầm lẫn và đưa ra một lỗi lỗi.

Ví dụ, chúng tôi muốn in cái này là ai.
We want to print who's this.

Nếu chúng tôi thực hiện trực tiếp điều này, chúng tôi sẽ nhận được thông báo lỗi -

SyntaxError: invalid syntax. Perhaps you forgot a comma?
          ^^^^^^
    print('Who's this?')
Line 1  (Solution.py)

Tại sao lỗi này xảy ra?

Thông dịch viên bối rối, nó không thể tìm thấy vị trí bắt đầu của một trích dẫn vì nó xảy ra ba lần.

Làm thế nào để vượt qua?

Để khắc phục vấn đề này, chúng ta có thể sử dụng trình tự thoát ở đây.

Output:

Các ví dụ trên cho thấy cách một trích dẫn duy nhất được in trong (WHO) bằng cách sử dụng dấu gạch chéo ngược (‘\ \).

Nó đã xảy ra vì dấu gạch chéo ngược (‘\,) trước khi bất kỳ nhân vật nào nói với trình thông dịch rằng sự kết hợp này là một chuỗi thoát trong Python, loại bỏ dấu gạch chéo ngược khỏi chuỗi và đặt báo giá bên trong chuỗi.

n Trình tự thoát trong Python

Giả sử tôi đưa ra một chuỗi, vì vậy nó sẽ không được coi là một dòng mới. Điều gì sẽ xảy ra nếu chúng ta muốn in một phần của chuỗi cụ thể trong dòng mới?

Chúng ta có thể sử dụng \ nv ở đây, cho biết trình thông dịch in một số ký tự trong dòng mới một cách riêng biệt.“\n” here, which tells the interpreter to print some characters in the new line separately.

Example:

Output:

Ví dụ trên cho thấy "bit" được in trong một dòng mới."Bit" is printed in a new line.

Vì vậy, chúng tôi có thể nói rằng chúng tôi sẽ nhận được dòng mới khi chúng tôi nhập \ n vào chuỗi trước bất kỳ từ hoặc ký tự nào.\n in the string before any word or character.

Trình tự thoát hiểm trong Python

Điều gì sẽ xảy ra nếu chúng ta muốn in một dấu gạch chéo ngược? Chúng tôi không thể làm điều đó chỉ bằng cách viết "", vì vậy chúng tôi sẽ sử dụng "\\"."\\".

Example:

Output:

Trình tự thoát Python cho không gian

Nếu chúng ta muốn thêm không gian tab giữa các từ, thì chuỗi thoát này sẽ cung cấp cho không gian tab giữa các từ hoặc ký tự bằng cách sử dụng \ tiêu.“\t”.

Example:

Output:

Từ ảnh chụp màn hình ở trên, bạn có thể thấy rằng nếu chúng ta muốn có một không gian tab giữa hai từ, chúng ta có thể sử dụng chuỗi thoát này để in các không gian.‘\t’ escape sequence to print the spaces.

Trình tự thoát hiểm trong Python

Trình tự thoát này được sử dụng để loại bỏ không gian giữa các từ.

Example:

Output:

Trình tự thoát Python cho giá trị hexa

Bây giờ, có thể có một tình huống mà chúng ta có các giá trị hexa và chúng ta muốn in bảng chữ cái bằng cách sử dụng giá trị hexa của chúng? Trong trường hợp như vậy, chúng ta có thể sử dụng \ xhh, trong đó HH là giá trị hexa duy nhất của bảng chữ cái.Hexa values? In such a case, we can use “\xhh”, where hh is the unique Hexa value of the alphabet.

Example:

SyntaxError: invalid syntax. Perhaps you forgot a comma?
          ^^^^^^
    print('Who's this?')
Line 1  (Solution.py)
2

Output:

Như bạn có thể thấy trong ví dụ trên, các ký tự được in theo các giá trị hexa tương ứng của chúng, tiếp theo là ‘\ xát. & Nbsp;‘\x’

Trình tự thoát Python cho giá trị bát phân

Bây giờ, điều gì sẽ xảy ra nếu chúng ta muốn in bảng chữ cái bằng cách sử dụng các giá trị bát phân của chúng? Vì vậy, chúng tôi sẽ sử dụng \ \ ooo, trong đó OOO là giá trị bát phân độc đáo của bảng chữ cái.“\ooo”, where ooo is the unique octal value of the alphabets.

Example:

SyntaxError: invalid syntax. Perhaps you forgot a comma?
          ^^^^^^
    print('Who's this?')
Line 1  (Solution.py)
4

Output:

Như bạn có thể thấy trong ví dụ trên, các ký tự được in theo các giá trị bát phân tương ứng của chúng, theo sau là ‘\.‘\’.

Xóa tất cả trình tự thoát khỏi danh sách

Bây giờ, nếu chúng ta muốn xóa tất cả các chuỗi thoát khỏi danh sách? Vì vậy, hãy để một ví dụ:

Example:

SyntaxError: invalid syntax. Perhaps you forgot a comma?
          ^^^^^^
    print('Who's this?')
Line 1  (Solution.py)
6

Output:

SyntaxError: invalid syntax. Perhaps you forgot a comma?
          ^^^^^^
    print('Who's this?')
Line 1  (Solution.py)
7

Trong ví dụ trên, có một danh sách chứa hai giá trị hexa (‘x50, và‘ x44,), vì vậy nếu chúng ta chỉ đặt một "\" trước chúng, thì chúng ta có thể thoát khỏi tất cả. Như bạn có thể thấy, có thể được thay thế bằng giá trị hexa của nó, và x44, được thay thế bằng ‘D, bằng cách đặt" \ "trước chúng."\" before them, then we can escape them all. As you can see, “x50” is replaced by its Hexa value ‘P’, and “x44” is replaced by ‘D’ by putting "\" before them.

Trình tự thoát Python bỏ qua

Để bỏ qua tất cả các chuỗi thoát trong chuỗi, chúng ta phải tạo một chuỗi dưới dạng chuỗi thô bằng cách sử dụng ‘R, trước chuỗi. Sau chuỗi thoát đó cũng sẽ được coi là ký tự bình thường. Hãy lấy một ví dụ.raw string using ‘r’ before the string. After that escape sequence will also be considered normal characters. Let's take an example.

Example:

Output:

Từ ví dụ trên, bạn có thể quan sát rằng khi chúng tôi gõ ’r, trước chuỗi, nó đã bỏ qua chuỗi thoát, nghĩa là một dòng mới \ n, trong chuỗi.‘r’ before the string, it ignored the escape sequence, that is, a new line “\n” in the string.

Trình tự thoát Python xóa

Để xóa tất cả các ký tự khỏi bên trái và bên phải của chuỗi đối số, chúng tôi sẽ sử dụng hàm chuỗi.Strip ().string.strip() function.

Example:

0

Output:

Hướng dẫn what is an escape code in python? - mã thoát trong python là gì?

Thoát giải thích trình tự

Khi một dấu gạch chéo ngược xuất hiện trong một chuỗi, chuỗi thoát được giải thích. Sau khi gặp dấu gạch chéo ngược (bên trong một chuỗi), ký tự tiếp theo (với (\)) sẽ được kiểm tra trên bảng trình tự thoát, đó là bảng được đề cập trước đó. Nếu một trận đấu được phát hiện trong bảng, trình tự được xóa khỏi chuỗi và được dịch sang ký tự bình thường. Nếu không có kết quả nào được phát hiện, không có tra cứu nào được thực hiện và trình tự điều khiển được sao chép chính xác như nó.

Example:

1

Output:

2

Như đã thấy trong đầu ra ở trên, câu lệnh in đầu tiên tạo ra đầu ra với một không gian tab vì \ t có mặt trong bảng. Mặt khác, trong tuyên bố in thứ hai, \ C vẫn tồn tại, vì không có giải pháp pháp lý nào cho chuỗi đó tồn tại.\t is present in the table. On the other hand, in the second print statement, the \c persists, as no legal resolution for that sequence exists.

Ngăn chặn sự giải thích trình tự thoát

Có một số tình huống mà chúng tôi không muốn chuỗi hoạt động như được hiển thị ở trên (có nghĩa là in bản dịch của chuỗi có trong bảng trình tự). Một số tình huống được hiển thị bên dưới nơi chúng ta phải in cùng một chuỗi thay vì bản dịch của nó.

  • Một chuỗi chứa một mạng hoặc một đường dẫn cục bộ.
  • Các chuỗi có chứa regex, mà động cơ Regex sẽ xử lý thêm.

Phương pháp phòng ngừa

  • Phương pháp 1

    Nó là tẻ nhạt và chỉ khuyên nếu kích thước chuỗi ít hơn. Chỉ cần nhân đôi phản ứng dữ dội cho phép chúng tôi khắc phục những vấn đề như vậy. Trong phương pháp này, chúng tôi tự tìm ra dấu gạch chéo ngược đơn lẻ và kết hợp nó với một dấu gạch chéo ngược khác.

    Example:

    3

    Output:

    4

    Trong trường hợp đầu tiên, "\ t" được coi là một không gian tab, nhưng trong khoảng thứ hai, "\ t" được in như một chữ bình thường.

  • Phương pháp 2

    Chúng ta có thể sử dụng khái niệm về chuỗi thô, tức là, thêm R hoặc R trước chuỗi, sẽ bảo tồn các chuỗi thoát như nghĩa đen.raw string, i.e., adding r or R before the string, which will preserve the escape sequences as literals.

    Example:

    5

    Output:

    6

    Trong chuỗi thô, như bạn có thể thấy rằng, các chuỗi thoát được bảo tồn dưới dạng nghĩa đen.

Sự kết luận

  • Trình tự thoát cho phép bạn chèn các ký tự đặc biệt vào chuỗi. Đặt một dấu gạch chéo ngược (\) trước nhân vật bạn muốn trốn thoát.backslash (\) before the character you want to escape.
  • Chúng ta có thể sử dụng khái niệm Trình tự Escape để chỉ định các hành động như chuyển động tab trong thiết bị đầu cuối và cũng để biểu diễn các ký tự không in như dòng mới (\ n) hoặc các ký tự có ý nghĩa đặc biệt như dấu ngoặc kép (").new line (\n) or characters that have special meaning like double quotation marks (").
  • Nói về phòng ngừa, chúng tôi có hai phương pháp: hoặc sử dụng phương pháp ngược đôi, không thể cho chuỗi lớn hơn hoặc sử dụng khái niệm chuỗi RAW, tức là, thêm R hoặc R trước chuỗi.double backslash method, which is not possible for a larger string or use the concept of raw string, i.e., adding r or R before the string.

Mã số là gì trong mã là gì?

Một lệnh văn bản đi trước ký tự Escape (ESC) (ASCII 27) hoặc một số biểu tượng khác như ampersand (xem bên dưới) hoặc dấu gạch chéo ngược (xem chuỗi theo nghĩa đen).Mã Escape báo hiệu thiết bị để thực thi lệnh văn bản thay vì in hoặc hiển thị các ký tự văn bản.. The escape code signals the device to execute the text command rather than print or display the text characters.

Trình tự thoát hiểm giải thích với ví dụ Python là gì?

Trình tự thoát hữu ích.

\ N có phải là một nhân vật thoát không?

Trình tự thoát được sử dụng bên trong các chuỗi, không chỉ các chuỗi cho printf, để đại diện cho các ký tự đặc biệt.Cụ thể, trình tự thoát \ n đại diện cho ký tự dòng mới.the \n escape sequence represents the newline character.

Làm thế nào để bạn thoát khỏi bản in trong Python?

Để in dấu gạch chéo ngược vào bảng điều khiển, chúng ta phải sử dụng các dấu gạch chéo ngược đôi (\\).Hãy thử nó.\ n có nghĩa là một dòng mới.Chúng tôi sẽ nhận được một dòng mới khi chúng tôi sử dụng chuỗi thoát \ n trong hàm in.use the double backslashes ( \\ ). Let's try it. \n means a new line. We will get a new line when we use the escape sequence \n in the print function.