เมื่อพิมพ์ผลลัพธ์ของการประมวลผลข้อมูลบางอย่างใน python เราอาจต้องแสดงผลในรูปแบบที่น่าสนใจบางอย่างหรือด้วยความแม่นยำทางคณิตศาสตร์บางอย่าง ในบทความนี้เราจะมาดูกันว่ามีตัวเลือกใดบ้างที่เราสามารถแสดงผลได้
การใช้รูปแบบ
ในแนวทางนี้ เราใช้ฟังก์ชันในตัวที่เรียกว่ารูปแบบ เราใช้ {} สำหรับตัวยึดตำแหน่งค่าที่จะระบุตามรูปแบบ โดยค่าเริ่มต้น ตำแหน่งจะถูกเติมในลำดับเดียวกันของค่าที่มาจากฟังก์ชันรูปแบบ แต่เรายังสามารถบังคับค่าในแง่ของตำแหน่งที่เริ่มต้นด้วย 0 เป็นดัชนีได้
ตัวอย่าง
weather = ['sunny','rainy'] day = ['Mon','Tue','Thu'] print('on {} it will be {}'.format(day[0], weather[1])) print('on {} it will be {}'.format(day[1], weather[0])) print('on {} it will be {}'.format(day[2], weather[1])) # Using positions print('on {0} it will be {1}'.format(day[0], weather[0])) print('It will be {1} on {0}'.format(day[2], weather[1]))
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
ผลลัพธ์
on Mon it will be rainy on Tue it will be sunny on Thu it will be rainy on Mon it will be sunny It will be rainy on Thu
กำลังใช้ %
วิธีนี้เหมาะสำหรับนิพจน์ทางคณิตศาสตร์มากกว่า เราสามารถจัดการจำนวนตำแหน่งทศนิยมที่จะแสดงหรือพิมพ์เฉพาะส่วนทศนิยมของทศนิยม นอกจากนี้เรายังสามารถแปลงตัวเลขที่กำหนดเป็นค่าฐานแปดหรือเลขชี้กำลังตามสัญกรณ์วิทยาศาสตร์ได้
ตัวอย่าง
# Print decimals print("Average age is %1.2f and height of the groups %1.3f" %(18.376, 134.219)) # Print integers print("Average age is %d and height of the groups %d" %(18.376, 134.219)) # # Print octal value print("% 2.7o" % (25)) # print exponential value print("% 7.4E" % (356.08977))
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
ผลลัพธ์
Average age is 18.38 and height of the groups 134.219 Average age is 18 and height of the groups 134 0000031 3.5609E+02
การจัดแนวสตริง
เราสามารถจัดเรียงผลลัพธ์ที่เป็นสตริงโดยใช้ฟังก์ชันสตริง ljust,rjust หรือ center นอกจากสตริงอินพุตแล้ว ยังรับค่าอื่นที่ใช้สำหรับการจัดตำแหน่งได้อีกด้วย
ตัวอย่าง
strA = "Happy Birthday !" # Aligned at center print(strA.center(40, '~'),'\n') # Printing left aligned print(strA.ljust(40, 'x'),'\n') # Printing right aligned print(strA.rjust(40, '^'),'\n')
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
ผลลัพธ์
~~~~~~~~~~~~Happy Birthday !~~~~~~~~~~~~ Happy Birthday !xxxxxxxxxxxxxxxxxxxxxxxx ^^^^^^^^^^^^^^^^^^^^^^^^Happy Birthday !