Định dạng chuỗi Python
Để đảm bảo một chuỗi sẽ hiển thị như mong đợi, chúng ta có thể định dạng kết quả bằng format()
phương thức.
Định dạng chuỗi ()
Phương format()
pháp này cho phép bạn định dạng các phần được chọn của một chuỗi.
Đôi khi có những phần của văn bản mà bạn không kiểm soát được, có thể chúng đến từ cơ sở dữ liệu hoặc do người dùng nhập?
Để kiểm soát các giá trị như vậy, hãy thêm trình giữ chỗ (dấu ngoặc nhọn {}
) trong văn bản và chạy các giá trị thông qua
format()
phương thức:
Thí dụ
Thêm trình giữ chỗ mà bạn muốn hiển thị giá:
price = 49
txt = "The price is {} dollars"
print(txt.format(price))
Bạn có thể thêm các tham số bên trong dấu ngoặc nhọn để chỉ định cách chuyển đổi giá trị:
Thí dụ
Định dạng giá được hiển thị dưới dạng số có hai số thập phân:
txt = "The price is {:.2f} dollars"
Kiểm tra tất cả các kiểu định dạng trong Tham chiếu định dạng chuỗi () của chúng tôi .
Nhiều giá trị
Nếu bạn muốn sử dụng nhiều giá trị hơn, chỉ cần thêm nhiều giá trị hơn vào phương thức format ():
print(txt.format(price, itemno, count))
Và thêm các trình giữ chỗ khác:
Thí dụ
quantity = 3
itemno = 567
price = 49
myorder = "I want {} pieces of
item number {} for {:.2f} dollars."
print(myorder.format(quantity, itemno, price))
Số chỉ mục
Bạn có thể sử dụng số chỉ mục (một số bên trong dấu ngoặc nhọn {0}
) để đảm bảo các giá trị được đặt trong đúng chỗ dành sẵn:
Thí dụ
quantity = 3
itemno = 567
price = 49
myorder = "I want {0} pieces of
item number {1} for {2:.2f} dollars."
print(myorder.format(quantity, itemno, price))
Ngoài ra, nếu bạn muốn tham chiếu đến cùng một giá trị nhiều lần, hãy sử dụng số chỉ mục:
Thí dụ
age = 36
name = "John"
txt = "His name is {1}. {1} is {0} years old."
print(txt.format(age,
name))
Chỉ mục được đặt tên
Bạn cũng có thể sử dụng các chỉ mục đã đặt tên bằng cách nhập tên bên trong dấu ngoặc nhọn {carname}
, nhưng sau đó bạn phải sử dụng tên khi truyền các giá trị tham số
txt.format(carname = "Ford")
:
Thí dụ
myorder = "I have a {carname}, it is a {model}."
print(myorder.format(carname
= "Ford", model = "Mustang"))