Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีเปรียบเทียบการจัดรูปแบบสตริง Python:% กับ .format


% สามารถรับตัวแปรหรือทูเพิลได้ ดังนั้นคุณต้องมีความชัดเจนมากเกี่ยวกับสิ่งที่คุณต้องการทำ ตัวอย่างเช่น หากคุณลองจัดรูปแบบเช่นนั้น −

ตัวอย่าง

my_tuple = (1, 2, 3)
"My tuple: %s" % my_tuple
You'd expect it to give the output:
My tuple: (1, 2, 3)

ผลลัพธ์

แต่มันจะโยน TypeError เพื่อรับประกันว่าจะพิมพ์ออกมาเสมอ คุณจะต้องระบุเป็นทูเพิลอาร์กิวเมนต์เดียวดังนี้ -

"hi there %s" % (name,)   # supply the single argument as a single-item tuple

การจำคำเตือนดังกล่าวทุกครั้งไม่ใช่เรื่องง่ายและอาจก่อให้เกิดข้อบกพร่องได้ .format ไม่มีปัญหาเหล่านั้น รูปแบบยังดูสะอาดตามากเมื่อเปรียบเทียบ