เมื่อใช้การจัดรูปแบบสตริงแบบเก่าใน python เช่น "" % () หากสิ่งที่อยู่หลังเปอร์เซ็นต์เป็นทูเพิล python จะพยายามแยกย่อยและส่งผ่านแต่ละรายการในสตริงนั้นไปยังสตริง ตัวอย่างเช่น
tup = (1,2,3) print("this is a tuple %s" % (tup))
สิ่งนี้จะให้ผลลัพธ์:
TypeError: not all arguments converted during string formatting
ทั้งนี้เป็นเพราะเหตุที่กล่าวข้างต้น หากคุณต้องการส่ง tuple คุณต้องสร้าง tuple การตัดคำโดยใช้ไวยากรณ์ (tup, ) ตัวอย่างเช่น
tup = (1,2,3) print("this is a tuple %s" % (tup, ))
สิ่งนี้จะให้ผลลัพธ์:
this is a tuple (1, 2, 3)
สัญกรณ์ (tup,) แยกความแตกต่างของทูเพิลที่มีค่าเดียวจากนิพจน์