R ở phía trước của một chuỗi có nghĩa là gì trăn?

Tiền tố của 'u' trong một chuỗi biểu thị giá trị của loại Unicode chứ không phải str. Tuy nhiên, các chuỗi Unicode không còn được sử dụng trong Python3. Tiền tố của 'u' trong một chuỗi biểu thị giá trị của loại Unicode chứ không phải str. Tuy nhiên, các chuỗi Unicode không còn được sử dụng trong Python3.  

Trong Python2, nếu chúng ta nhập một chuỗi ký tự không có 'u' ở phía trước, chúng ta sẽ có loại str cũ lưu trữ các ký tự 8 bit và với 'u' ở phía trước, chúng ta có loại Unicode mới hơn có thể lưu trữ bất kỳ ký tự Unicode nào

Ngoài ra, việc thêm 'r' không thay đổi loại chữ, chỉ thay đổi cách diễn giải chuỗi ký tự. Không có dấu gạch chéo 'r' (/) được coi là ký tự thoát. Với 'r' (/) được coi là chữ

dây thô

Tiền tố chuỗi bằng 'r' làm cho chuỗi ký tự thành 'chuỗi thô'. Chuỗi thô của Python xử lý dấu gạch chéo ngược (\) dưới dạng ký tự chữ, điều này hữu ích khi chúng ta muốn có một chuỗi chứa dấu gạch chéo ngược và không muốn nó được coi là ký tự thoát

con trăn

lập trình

r

lá cờ

trước

chuỗi

VI

Python - 'r' trước chuỗi nghĩa là gì?

1 câu trả lời

0 điểm

Được hỏi bởi

R ở phía trước của một chuỗi có nghĩa là gì trăn?
Haris65

476

r trước một chuỗi trong Python là gì?

Ví dụ

text = r' \1'

0 nhận xét Thêm nhận xét

Tạo câu trả lời 1 câu trả lời

0 điểm

trả lời bởi

R ở phía trước của một chuỗi có nghĩa là gì trăn?
Haris65

476

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

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

When an 'r' or 'R' prefix is present, a character following a backslash is included in 
the string without change, and all backslashes are left in the string. For example, the string 
literal r"\n" consists of two characters: a backslash and a lowercase 'n'. String quotes 
can be escaped with a backslash, but the backslash remains in the string; 
for example, r"\"" is a valid string literal consisting of two characters: 
a backslash and a double quote; r"\" is not a valid string literal 
(even a raw string cannot end in an odd number of backslashes). 
Specifically, a raw string cannot end in a single backslash (since the backslash 
would escape the following quote character). Note also that a single backslash followed 
by a newline is interpreted as those two characters as part of the string, 
not as a line continuation.

0 nhận xét Thêm nhận xét

Tạo câu trả lời

0 điểm

trả lời bởi

R ở phía trước của một chuỗi có nghĩa là gì trăn?
Haris65

476

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

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

When an 'r' or 'R' prefix is present, a character following a backslash is included in 
the string without change, and all backslashes are left in the string. For example, the string 
literal r"\n" consists of two characters: a backslash and a lowercase 'n'. String quotes 
can be escaped with a backslash, but the backslash remains in the string; 
for example, r"\"" is a valid string literal consisting of two characters: 
a backslash and a double quote; r"\" is not a valid string literal 
(even a raw string cannot end in an odd number of backslashes). 
Specifically, a raw string cannot end in a single backslash (since the backslash 
would escape the following quote character). Note also that a single backslash followed 
by a newline is interpreted as those two characters as part of the string, 
not as a line continuation.

0 nhận xét Thêm nhận xét

Chuỗi f là một chuỗi ký tự có tiền tố là 'f' hoặc 'F'. Các chuỗi này có thể chứa các trường thay thế, là các biểu thức được phân tách bằng dấu ngoặc nhọn

>>> num = 10
>>> f"{num/2}"
5.0
0. Trong khi các chuỗi ký tự khác luôn có giá trị không đổi, các chuỗi được định dạng thực sự là các biểu thức được đánh giá trong thời gian chạy

Trường hợp sử dụng 1 (lười gõ biến)

>>> name = "Fred"
>>> age = 21
>>> print(f"my name is {name}, age is {age}.")
My name is Fred, age is 21.

Trường hợp sử dụng 2 (thay đổi trực tiếp đầu ra)

>>> num = 10
>>> f"{num/2}"
5.0

Trường hợp sử dụng 3 (Chuyển đổi sang nhị phân/bát phân/thập lục phân)

>>> a = 20
>>> f"{a:b}" # binary
10100
>>> f"{a:o}" # octal
24
>>> f"{a:x}" # hex
14

Trường hợp sử dụng 4 (làm tròn đến X chữ số thập phân)

>>> num_value = 100.5678
>>>f'{num_value:.2f}' # Round to 2 decimal places
100.57

2.

>>> num = 10
>>> f"{num/2}"
5.0
1

>>> num = 10
>>> f"{num/2}"
5.0
1 có nghĩa là chuỗi sẽ được coi là chuỗi thô, có nghĩa là tất cả các mã thoát sẽ bị bỏ qua

Ví dụ

Hai dòng sau có cùng kết quả

>>> print("W:\\Python\\test.py")
>>> print(r"W:\Python\test.py")

3.

>>> num = 10
>>> f"{num/2}"
5.0
3

Chữ 'u' phía trước các giá trị chuỗi có nghĩa là chuỗi đó là chuỗi Unicode. Unicode là một cách để thể hiện nhiều ký tự hơn ASCII bình thường có thể quản lý. Thực tế là bạn đang nhìn thấy

>>> num = 10
>>> f"{num/2}"
5.0
3 có nghĩa là bạn đang sử dụng Python 2 - các chuỗi là Unicode theo mặc định trên Python 3, nhưng trên Python 2, _
>>> num = 10
>>> f"{num/2}"
5.0
3 ở phía trước phân biệt các chuỗi Unicode

Thông thường, nó được sử dụng trong tình huống sau

>>> val = u'Ознакомьтесь с документацией'
>>> val
u'\u041e\u0437\u043d\u0430\u043a\u043e\u043c\u044c\u0442\u0435\u0441\u044c \u0441 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0435\u0439'
>>> print val
Ознакомьтесь с документацией

4.

>>> num = 10
>>> f"{num/2}"
5.0
6

Các byte bằng chữ luôn có tiền tố là 'b' hoặc 'B'; . Chúng chỉ có thể chứa các ký tự ASCII;

r ở phía trước chuỗi trong Python là gì?

r có nghĩa là chuỗi sẽ được coi là chuỗi thô . Xem Tài liệu tham khảo Python 2 chính thức về "Chuỗi ký tự". Khi có tiền tố 'r' hoặc 'R', một ký tự theo sau dấu gạch chéo ngược sẽ được đưa vào chuỗi mà không thay đổi và tất cả các dấu gạch chéo ngược đều được để lại trong chuỗi.

Tại sao r được sử dụng làm chuỗi trong Python?

Trong Python, các chuỗi có tiền tố là r hoặc R , chẳng hạn như r'. ' và r". " , được gọi là chuỗi thô và xử lý dấu gạch chéo ngược \ dưới dạng ký tự chữ . Chuỗi thô rất hữu ích khi xử lý các chuỗi sử dụng nhiều dấu gạch chéo ngược, chẳng hạn như đường dẫn Windows và mẫu biểu thức chính quy.