Python 字符串格式化

เพื่อให้ความแน่ใจว่าข้อความแสดงขึ้นตามที่คาดหวัง คุณสามารถใช้ format() วิธีนี้จัดระเบียบผลลัพธ์

format() ของ String

format() วิธีนี้อนุญาตให้คุณจัดระเบียบส่วนหนึ่งของข้อความ

บางครั้งส่วนหนึ่งของข้อความของคุณอาจไม่สามารถควบคุมได้ อาจมาจากฐานข้อมูลหรือการแสดงตัวเลือกของผู้ใช้

เพื่อควบคุมตัวค่านี้ ให้เพิ่มตัวยืนยันตำแหน่ง (วงวรรคม) ในข้อความ {}),แล้วทำการประมวลผลค่าด้วยวิธี format()

ตัวอย่าง

เพิ่มตัวยืนยันตำแหน่งสำหรับราคาที่ต้องการแสดง

price = 52
txt = "ราคาคือ {} บาท"
print(txt.format(price))

ปฏิบัติตัวอย่าง

คุณสามารถเพิ่มตัวอย่างตัวแปรในวงวรรคมเพื่อกำหนดวิธีการการแปลงค่า

ตัวอย่าง

จัดระเบียบราคาเป็นตัวเลขที่มีสองตำแหน่งทศนิยม

txt = "ราคาคือ {:.2f} บาท"

ปฏิบัติตัวอย่าง

ดูคู่มือการใช้งาน format() ของ String ทั้งหมดในเอกสารที่มีอยู่

ค่าหลายตัว

ถ้าต้องการใช้ค่ามากกว่านี้ แค่เพิ่มค่าเข้าไปในวิธี format() ต่อไป

print(txt.format(price, itemno, count))

และเพิ่มตัวยืนยันตำแหน่งเพิ่มเติม:

ตัวอย่าง

quantity = 3
itemno = 567
price = 52
myorder = "ฉันต้องการ {} ชิ้นของรหัสสินค้า {} ที่มีราคา {:.2f} บาท."
print(myorder.format(quantity, itemno, price))

ปฏิบัติตัวอย่าง

หมายเลขด้านหลัง

คุณสามารถใช้หมายเลขด้านหลัง (ในวงเล็บ): {0} ในตัวเลขภายในโครงการนี้เพื่อให้ความแน่ใจว่าจะใส่ค่าที่ถูกต้องในตำแหน่งที่ถูกต้อง:

ตัวอย่าง

quantity = 3
itemno = 567
price = 52
myorder = "I want {0} pieces of item number {1} for {2:.2f} dollars."
print(myorder.format(quantity, itemno, price))

ปฏิบัติตัวอย่าง

นอกจากนี้ ถ้าต้องการอ้างอิงค่าเดียวกันหลายครั้ง ให้ใช้หมายเลขด้านหลัง:

ตัวอย่าง

age = 63
name = "Bill"
txt = "His name is {1}. {1} is {0} years old."
print(txt.format(age, name))

ปฏิบัติตัวอย่าง

ตัวที่ชื่อ

คุณยังสามารถใช้ตัวเลขภายใน {carname} ใส่ชื่อในช่องเพื่อใช้ด้วยตัวที่ชื่อ แต่ในตอนที่ส่งค่าตัวแปร txt.format(carname = "Ford") ต้องใช้ชื่อ:

ตัวอย่าง

myorder = "I have a {carname}, it is a {model}."
print(myorder.format(carname = "Porsche", model = "911"))

ปฏิบัติตัวอย่าง