Hướng dẫn what does an r before a string mean in python? - một r trước một chuỗi có nghĩa là gì trong python?

R có nghĩa là ‘chuỗi thô

Một ’r, trước khi một chuỗi bảo người phiên dịch Python coi dấu gạch chéo ngược là một ký tự theo nghĩa đen (RAW). Thông thường, Python sử dụng dấu gạch chéo ngược như các ký tự thoát. Mở đầu định nghĩa chuỗi với ‘R, là một cách hữu ích để xác định một chuỗi trong đó bạn cần dấu gạch chéo ngược để trở thành một dấu gạch chéo ngược thực tế và không phải là một phần của mã thoát có nghĩa là một cái gì đó khác trong chuỗi.

Ví dụ

1. Trong ví dụ này, Python sẽ giải thích từng ‘\ t, được tìm thấy trong chuỗi này dưới dạng tab. Đó là, dấu gạch chéo ngược+t được hiểu là một chuỗi thoát với một mục đích đặc biệt.

>>> 'path\to\the\thing'
'path\to\the\thing'
>>> print('path\to\the\thing')
path o he hing
>>>

2. Bằng cách thêm R hàng đầu, Python sẽ biết rằng các dấu gạch chéo ngược sẽ được hiểu là các ký tự theo nghĩa đen và không phải là trình tự thoát. Thật thú vị, lưu ý làm thế nào Python đại diện cho dấu gạch chéo ngược theo nghĩa đen như một chuỗi thoát của dấu gạch chéo ngược + dấu gạch chéo ngược.r, Python will know that the backslashes are to be interpreted as literal characters and not escape sequences. Interestingly, note how Python represents the literal backslash–as an escape sequence of backslash + backslash.

>>> r'path\to\the\thing'
'path\\to\\the\\thing'
>>> print(r'path\to\the\thing')
path\to\the\thing
>>>

3. Điều này có nghĩa là một cách khác để xử lý vấn đề ngược dòng là sử dụng Backslash + Backslash trong định nghĩa chuỗi của bạn. Tuy nhiên, điều này có cảm giác giống như một cách khó hiểu hơn để xác định chuỗi với tôi khi so sánh với việc sử dụng ‘r,. Sử dụng ‘R, tôi nghĩ rằng, mã dễ đọc hơn.

>>> 'path\\to\\the\\thing'
'path\\to\\the\\thing'
>>> print('path\\to\\the\\thing')
path\to\the\thing
>>>

Để biết thêm thông tin

Tài liệu tham khảo Python 3, Phần 2.4.1, Chuỗi và BYTES BYTES

Thêm công cụ miễn phí!

Chuỗi RAW Python được tạo bằng tiền tố một chuỗi theo nghĩa đen với ‘r, hoặc‘ r. Chuỗi thô Python coi Backslash (\) là một ký tự theo nghĩa đen. Điều này rất hữu ích khi chúng tôi muốn có một chuỗi chứa dấu gạch chéo ngược và don không muốn nó được coi là một nhân vật thoát.

Chuỗi Raw Python

Hãy nói rằng chúng tôi muốn tạo một chuỗi hi \ nhello trong Python. Nếu chúng ta cố gắng gán nó cho một chuỗi bình thường, \ n sẽ được coi là một dòng mới.Hi\nHello in python. If we try to assign it to a normal string, the \n will be treated as a new line.

s = 'Hi\nHello'
print(s)

Đầu ra:

Hi
Hello

Hãy cùng xem chuỗi RAW giúp chúng ta coi việc đánh dấu dấu gạch chéo ngược như một nhân vật bình thường như thế nào.

raw_s = r'Hi\nHello'
print(raw_s)

Đầu ra:

>>> r'path\to\the\thing'
'path\\to\\the\\thing'
>>> print(r'path\to\the\thing')
path\to\the\thing
>>>
4 Hãy cùng xem một ví dụ khác trong đó nhân vật theo sau là dấu gạch chéo ngược không có ý nghĩa đặc biệt nào.

>>> s = 'Hi\xHello'
  File "", line 1
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \xXX escape

Chúng tôi đã gặp lỗi vì Python không biết cách giải mã ‘\ x, vì nó không có ý nghĩa đặc biệt nào. Hãy để xem cách chúng ta có thể tạo cùng một chuỗi bằng các chuỗi thô.

>>> s = r'Hi\xHello'
>>> print(s)
Hi\xHello

Nếu bạn đang ở trên bảng điều khiển Python và tạo một chuỗi thô như dưới đây.

>>> r'Hi\xHello'
'Hi\\xHello'

Don Tiết bị nhầm lẫn với đầu ra có hai dấu gạch chéo ngược. Nó chỉ để hiển thị nó như một chuỗi Python bình thường, trong đó dấu gạch chéo ngược đang bị thoát ra.

Chuỗi và trích dẫn Python Raw

Khi một dấu gạch chéo ngược được theo sau bởi một trích dẫn trong một chuỗi thô, nó đã thoát ra. Tuy nhiên, dấu gạch chéo ngược cũng vẫn còn trong kết quả. Vì tính năng này, chúng tôi có thể tạo ra một chuỗi RAW của dấu gạch chéo ngược. Ngoài ra, một chuỗi thô có thể có một số ít các dấu gạch chéo ngược ở cuối. Một số chuỗi thô không hợp lệ là:

r'\'  # missing end quote because the end quote is being escaped
r'ab\\\'  # first two backslashes will escape each other, the third one will try to escape the end quote.

Hãy cùng xem xét một số ví dụ chuỗi thô hợp lệ với các trích dẫn.

>>> r'path\to\the\thing'
'path\\to\\the\\thing'
>>> print(r'path\to\the\thing')
path\to\the\thing
>>>
0

Output:

>>> r'path\to\the\thing'
'path\\to\\the\\thing'
>>> print(r'path\to\the\thing')
path\to\the\thing
>>>
1

Đó là tất cả để giới thiệu nhanh chuỗi Raw Python.

Bạn có thể kiểm tra toàn bộ tập lệnh Python và nhiều ví dụ về Python từ Kho lưu trữ GitHub của chúng tôi.

________ 15 & nbsp; trước một chuỗi trong Python là gì?

Example:

>>> r'path\to\the\thing'
'path\\to\\the\\thing'
>>> print(r'path\to\the\thing')
path\to\the\thing
>>>
2

Nó có nghĩa là chuỗi sẽ được coi là một chuỗi thô.

Bạn có thể đọc về các chuỗi thô ở đây, trong tài liệu Python.

>>> r'path\to\the\thing'
'path\\to\\the\\thing'
>>> print(r'path\to\the\thing')
path\to\the\thing
>>>
3

\ R có nghĩa là python là gì?

Trong các chuỗi Python, dấu gạch chéo ngược "\" là một nhân vật đặc biệt, còn được gọi là nhân vật "Escape".Nó được sử dụng để thể hiện các ký tự khoảng trắng nhất định: "\ t" là một tab, "\ n" là một dòng mới và "\ r" là một sự trở lại vận chuyển.carriage return.

R trước một chuỗi có nghĩa là gì?

R có nghĩa là 'chuỗi thô' 'r' trước khi một chuỗi cho biết trình thông dịch Python coi dấu gạch chéo ngược như một ký tự theo nghĩa đen (RAW).Thông thường, Python sử dụng dấu gạch chéo ngược như các ký tự thoát.Raw String' An 'r' before a string tells the Python interpreter to treat backslashes as a literal (raw) character. Normally, Python uses backslashes as escape characters.

R ở cuối chuỗi trong Python là gì?

R trong chuỗi R có nghĩa là chuỗi thô.raw strings.