Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python - Định dạng đầu ra (Output Formatting)


Có một số cách để trình bày đầu ra của một chương trình, dữ liệu có thể được in dưới dạng dễ đọc cho con người, hoặc ghi vào file để sử dụng sau. Đôi khi người dùng thường muốn kiểm soát nhiều hơn định dạng đầu ra hơn là chỉ in các giá trị cách nhau bởi dấu cách. Có một số cách để định dạng đầu ra.

  • Để sử dụng formatted string literals, bắt đầu một chuỗi bằng f hoặc F trước dấu nháy mở hoặc ba dấu nháy.
  • Phương thức str.format() của chuỗi giúp người dùng có được đầu ra đẹp hơn.
  • Người dùng có thể tự xử lý chuỗi bằng cách sử dụng cắt chuỗi (slicing) và nối chuỗi (concatenation) để tạo bất kỳ bố cục nào mong muốn. Kiểu chuỗi có một số phương thức thực hiện các phép toán hữu ích để padding chuỗi đến độ rộng cột cho trước.

Định dạng đầu ra sử dụng toán tử modulo chuỗi (%)

Toán tử % cũng có thể được sử dụng để định dạng chuỗi. Nó hiểu đối số bên trái rất giống như chuỗi định dạng kiểu printf() để áp dụng cho đối số bên phải.

Ví dụ

# toán tử modulo chuỗi (%) để in
# in giá trị nguyên và float
print("Vishesh: %2d, Portal: %5.2f" % (1, 5.333))
# in giá trị nguyên
print("Total students: %3d, Boys: %2d" % (240, 120))
# in giá trị bát phân
print("%7.3o" % (25))
# in giá trị mũ
print("%10.3E" % (356.08977))

Đầu ra

Vishesh:  1, Portal:  5.33
Total students: 240, Boys: 120
   031
 3.561E+02

Định dạng đầu ra sử dụng phương thức format

Phương thức format() được thêm vào Python (2.6). Phương thức format của chuỗi đòi hỏi nỗ lực thủ công hơn. Người dùng dùng {} để đánh dấu nơi biến sẽ được thay thế và có thể cung cấp các chỉ thị định dạng chi tiết, nhưng cũng cần cung cấp thông tin để định dạng.

Ví dụ

# ví dụ format() dùng trong từ điển
tab = {'Vishesh': 4127, 'for': 4098, 'python': 8637678}
# sử dụng format() trong từ điển
print('Vishesh: {0[Vishesh]:d}; For: {0[for]:d}; python: {0[python]:d}'.format(tab))
data = dict(fun="VisheshforPython", adj="Python")
# sử dụng format() trong từ điển
print("I love {fun} computer {adj}".format(**data))

Định dạng đầu ra sử dụng phương thức chuỗi

Trong đó đầu ra được định dạng bằng cách sử dụng cắt chuỗi và nối chuỗi.

Ví dụ

# định dạng đầu ra sử dụng phương thức string()
cstr = "I love python"
# In chuỗi căn giữa
# với fillchr
print("Chuỗi căn giữa với fillchr: ")
print(cstr.center(40, '$'))
# In chuỗi căn trái với padding "-"
print("Chuỗi căn trái là: ")
print(cstr.ljust(40, '-'))
# In chuỗi căn phải với padding "-"
print("Chuỗi căn phải là: ")
print(cstr.rjust(40, '-'))

Đầu ra

Chuỗi căn giữa với fillchr: $$$$$$$$$$$$$I love python$$$$$$$$$$$$$$
Chuỗi căn trái là: I love python---------------------------
Chuỗi căn phải là: ---------------------------I love python