Python:
Nội suy chuỗi ký tự
Làm thế nào:
Trong Python 3.6 trở lên, bạn có thể nội suy chuỗi sử dụng f-strings. Dưới đây là cách:
name = 'Alice'
age = 30
greeting = f"Xin chào, {name}. Bạn {age} tuổi."
print(greeting)
Đầu ra:
Xin chào, Alice. Bạn 30 tuổi.
Bạn cũng có thể sử dụng biểu thức bên trong dấu ngoặc nhọn:
a = 5
b = 10
info = f"Năm cộng mười là {a + b}, không phải {2 * (a + b)}."
print(info)
Đầu ra:
Năm cộng mười là 15, không phải 30.
Sâu hơn
Trước Python 3.6, .format()
là cách thức được áp dụng để nội suy chuỗi:
name = 'Bob'
age = 25
greeting = "Xin chào, {}. Bạn {} tuổi.".format(name, age)
print(greeting)
Python cũ (phiên bản < 2.6) sử dụng toán tử %
cho nội suy, ít trực quan và có thể trở nên lộn xộn với nhiều biến:
name = 'Carol'
age = 35
greeting = "Xin chào, %s. Bạn %d tuổi." % (name, age)
print(greeting)
Ngoài cú pháp sạch sẽ hơn, f-strings còn nhanh hơn vì chúng được đánh giá tại thời điểm chạy và sau đó được chuyển đổi trực tiếp thành một thao tác định dạng chuỗi hiệu quả. Phương pháp .format()
và toán tử %
bao gồm nhiều bước hơn và chậm hơn.
Xem thêm
- PEP 498 – Nội suy chuỗi literan để biết tài liệu chính thức về f-strings.
- Python f-strings của Real Python cho một bài hướng dẫn về sử dụng f-strings.
- Phương pháp .format() trong tài liệu Python để hiểu rõ hơn về phương pháp định dạng chuỗi
.format()
cũ.