Chuyển đến nội dung chính
Mô-đun 1 · Bài học 4 trong tổng số 44/36 trong khóa học~8 min
Bài học theo mô-đun (4/4)

In và chuỗi f

Để truyền đạt điều gì đó tới người dùng (hoặc để xem điều gì đang xảy ra bên trong chương trình của chúng tôi), chúng tôi sử dụng hàm print(...) tích hợp sẵn. Để soạn văn bản từ nhiều giá trị, cú pháp hiện đại và ưa thích là chuỗi f.

print(...)

Python
print("Ciao, mondo!")           # Ciao, mondo!
print("a", "b", "c")            # a b c       (separati da spazio)
print(2 + 2)                    # 4
print("riga 1", "riga 2")       # riga 1 riga 2

print có thể nhận bao nhiêu đối số tùy thích: nó nối chúng bằng một khoảng trắng (bởi default) và thêm một dòng mới vào cuối. Bạn có thể thay đổi cả hai bằng Tham số sep và end:

Python
print("a", "b", "c", sep="-")   # a-b-c
print("senza newline", end="")  # niente \n dopo

chuỗi f: nội suy hiện đại

chuỗi f là một chuỗi có tiền tố f: bên trong dấu ngoặc nhọn {...} bạn có thể chèn bất kỳ biểu thức Python nào sẽ được đánh giá và chèn vào kết quả:

Python
nome = "Ada"
anni = 30
print(f"Mi chiamo {nome} e ho {anni} anni.")
# Mi chiamo Ada e ho 30 anni.

Bên trong dấu ngoặc nhọn, bạn có thể thực hiện các lệnh gọi, thao tác, truy cập đối tượng - đó là Mã Python ở mọi khía cạnh:

Python
prezzo = 12.5
quantita = 3
print(f"Totale: {prezzo * quantita:.2f} €")
# Totale: 37.50 €

:.2f sau dấu hai chấm là thông số định dạng: trong trường hợp này là "hai số thập phân chữ số, điểm cố định". Các thông số định dạng hữu ích nhất:

  • :.Nf — N chữ số thập phân (f"{pi:.4f}" → 3.1416).
  • :N / :>N / :<N / :^N — chiều rộng N, căn chỉnh phải/trái/giữa.
  • :_ hoặc :, — dấu phân cách hàng nghìn (f"{1000000:,}" → 1,000,000).

Cú pháp thay thế (để tham khảo)

Trước chuỗi f (được giới thiệu trong Python 3.6), hai dạng đã được sử dụng bạn vẫn sẽ gặp phải mã cũ hơn:

Python
# stile .format() — verboso ma esplicito
"{} ha {} anni".format("Ada", 30)

# stile %-formatting — molto vecchio
"%s ha %d anni" % ("Ada", 30)

Đối với mã mới, luôn sử dụng chuỗi f: ngắn hơn, dễ đọc hơn, nhanh hơn.

Định dạng nâng cao với chuỗi f

Chuỗi F hỗ trợ các thông số định dạng phong phú ngay bên trong dấu ngoặc nhọn. Ví dụ: để định dạng một số thập phân có chính xác hai chữ số thập phân, bạn có thể viết:

Python
price = 19.99
print(f"Price: {price:.2f} $")

Công cụ xác định :.2f chỉ ra rằng chúng tôi muốn biểu thị số float với chính xác 2 chữ số thập phân.

Hãy tự mình thử

tập thể dục#python.m1.l4.e1
Nỗ lực: 0Đang tải…

Cho `name = 'Ada'` và `age = 30`, xây dựng chuỗi 'Ada ha 30 anni' bằng một chuỗi f và gán nó cho `line`. Đánh giá `dòng`.

Đang tải trình chỉnh sửa…
Hiển thị gợi ý

Cú pháp: f"thứ gì đó {biến} thứ gì đó khác"

Giải pháp khả dụng sau 3 lần thử

Xem lại bài tập

tập thể dục#python.m1.l4.e2
Nỗ lực: 0Đang tải…

In bằng print() chuỗi 'pi greco vale 3.14' bắt đầu từ `pi = 3.14159`, sử dụng chuỗi f có thông số định dạng là 2 số thập phân.

Đang tải trình chỉnh sửa…
Hiển thị gợi ý

Thông số định dạng nằm sau dấu hai chấm bên trong dấu ngoặc nhọn: {pi:.2f}.

Giải pháp khả dụng sau 3 lần thử

Thử thách bổ sung

tập thể dục#python.m1.l4.e3
Nỗ lực: 0Đang tải…

Given a variable `price` set to `19.99`, use an f-string to construct the string `'Price: 19.99 €'` and store it in `receipt_line`. Finally, evaluate the variable.

Đang tải trình chỉnh sửa…
Hiển thị gợi ý

Sử dụng f"Price: {price} €" và gán kết quả cho dòng biên nhận.

Giải pháp khả dụng sau 3 lần thử