Computer >> Máy Tính >  >> Lập trình >> Python

Khi nào sử dụng% r thay vì% s trong Python?

Trình xác định% s chuyển đổi đối tượng bằng cách sử dụng str () và% r chuyển đổi nó bằng cách sử dụng repr ().

Đối với một số đối tượng chẳng hạn như số nguyên, chúng mang lại cùng một kết quả, nhưng repr () đặc biệt ở chỗ (đối với các loại có thể) nó quy ước trả về một kết quả là cú pháp Python hợp lệ, có thể được sử dụng để tạo lại đối tượng một cách rõ ràng. đại diện. Ví dụ:nếu bạn có một chuỗi với các ký tự dòng cuối,% s sẽ thực sự hiển thị nội dung trên các dòng mới trong khi% r sẽ chỉ cung cấp đầu ra là \ n và cũng giữ nguyên các dấu ngoặc kép.

Ví dụ

>>> string = "Hello\nworld"
>>> print "Example: %s" % string
Example: Hello
world
>>> print "Example: %r" % string
Example: 'Hello\nworld'

Bạn có thể sử dụng biểu thức thứ hai để thực sự tạo lại đối tượng.