Câu trả lời:
Các pprint mô-đun có một lệnh đặt tên pformat , chỉ cho mục đích đó.
Từ tài liệu:
Trả về đại diện được định dạng của đối tượng dưới dạng một chuỗi. thụt lề, chiều rộng và chiều sâu sẽ được chuyển đến hàm tạo PrettyPrinter dưới dạng tham số định dạng.
Thí dụ:
>>> import pprint
>>> people = [
... {"first": "Brian", "last": "Kernighan"},
... {"first": "Dennis", "last": "Richie"},
... ]
>>> pprint.pformat(people, indent=4)
"[ { 'first': 'Brian', 'last': 'Kernighan'},\n { 'first': 'Dennis', 'last': 'Richie'}]"
Giả sử bạn thực sự có ý nghĩa pprinttừ thư viện in đẹp , thì bạn muốn pprint.pformatphương thức này.
Nếu bạn chỉ có ý print, thì bạn muốnstr()
Một cái gì đó như thế này:
import pprint, StringIO
s = StringIO.StringIO()
pprint.pprint(some_object, s)
print s.getvalue() # displays the string