เนื้อหา
พิมพ์() – อาจเป็นคำสั่งแรกที่ผู้เริ่มต้นพบเมื่อเรียนรู้ Python ตั้งแต่เริ่มต้น เกือบทุกคนเริ่มต้นด้วยการทักทายง่ายๆ บนหน้าจอ และศึกษาเพิ่มเติมเกี่ยวกับไวยากรณ์ ฟังก์ชัน และวิธีการของภาษา โดยไม่ต้องคำนึงถึงคุณลักษณะเพิ่มเติม พิมพ์ (). อย่างไรก็ตาม ใน Pythในวันที่ 3 คำสั่งนี้ให้การเข้าถึงฟังก์ชันเอาต์พุตข้อมูลพื้นฐานพร้อมพารามิเตอร์และความสามารถโดยธรรมชาติ การทราบคุณสมบัติเหล่านี้จะช่วยให้คุณปรับเอาต์พุตข้อมูลให้เหมาะสมสำหรับแต่ละกรณี
ประโยชน์ของคุณสมบัติ พิมพ์() ใน หลาม 3
ในเวอร์ชันที่สามของ Python พิมพ์() รวมอยู่ในชุดฟังก์ชันพื้นฐาน เมื่อทำการตรวจสอบ ชนิด(พิมพ์) ข้อมูลจะปรากฏขึ้น: ชั้น 'ในตัว_ฟังก์ชัน_or_วิธี'. คำ ในตัว แสดงว่าฟังก์ชันที่กำลังทดสอบเป็นแบบอินไลน์
ไม่เป็นไรhบนวัตถุเอาต์พุต 3 รายการ (วัตถุs) อยู่ในวงเล็บหลังคำว่า พิมพ์. ในตัวอย่างผลลัพธ์ของการทักทายแบบเดิมๆ จะมีลักษณะดังนี้:
สำหรับ หลาม 3: พิมพ์('สวัสดีชาวโลก!').
ใน Python 2 จะใช้คำสั่งโดยไม่มีวงเล็บ: พิมพ์ 'สวัสดี, โลก! '
ผลลัพธ์ในทั้งสองเวอร์ชันจะเหมือนกัน: สวัสดี, โลก!
หากใน Python รุ่นที่สอง ค่าหลัง พิมพ์ ใส่ในวงเล็บ จากนั้นทูเพิลจะปรากฏขึ้น – ชนิดข้อมูลที่เป็นรายการที่ไม่เปลี่ยนรูปแบบ:
พิมพ์ (1, 'แรก', 2, 'ที่สอง')
(1, 'แรก', 2, 'วินาที')
เมื่อพยายามถอดวงเล็บหลัง พิมพ์ ในเวอร์ชันที่สามของ Python โปรแกรมจะให้ข้อผิดพลาดทางไวยากรณ์
พิมพ์ ("สวัสดีชาวโลก!")
ไฟล์ "", บรรทัดที่ 1 พิมพ์ "Hello, World!" ^ SyntaxError: ไม่มีวงเล็บในการเรียกใช้ 'print' คุณหมายถึง print("Hello, World!") หรือไม่
ลักษณะเฉพาะของการพิมพ์ () ไวยากรณ์ใน Python 3
ไวยากรณ์ฟังก์ชัน พิมพ์ () รวมถึงวัตถุจริงหรือวัตถุ (วัตถุ) ซึ่งเรียกอีกอย่างว่าค่า (ค่า) หรือองค์ประกอบ (รายการ) และบางตัวเลือก วิธีการแสดงผลวัตถุนั้นถูกกำหนดโดยอาร์กิวเมนต์ที่มีชื่อสี่ตัว: ตัวคั่นองค์ประกอบ (กันยายน) สตริงที่พิมพ์หลังอ็อบเจ็กต์ทั้งหมด (ปลาย) ไฟล์ที่ส่งออกข้อมูล (เนื้อไม่มีมัน) และพารามิเตอร์ที่รับผิดชอบบัฟเฟอร์เอาต์พุต (ล้าง).
พิมพ์ (ค่า, ..., sep='', end='n', file=sys.stdout, flush=False)
การเรียกใช้ฟังก์ชันสามารถทำได้โดยไม่ต้องระบุค่าพารามิเตอร์และแม้จะไม่มีวัตถุใด ๆ ก็ตาม: พิมพ์ (). ในกรณีนี้ พารามิเตอร์เริ่มต้นจะถูกใช้ และหากไม่มีองค์ประกอบ อักขระสตริงว่างที่ไม่ได้แสดงจะปรากฏขึ้น อันที่จริง ค่าของพารามิเตอร์ ปลาย - 'n'. ตัวอย่างเช่น การโทรดังกล่าวสามารถใช้สำหรับการเยื้องแนวตั้งระหว่างหมุดได้
อาร์กิวเมนต์ที่ไม่ใช่คีย์เวิร์ด (อ็อบเจ็กต์) ทั้งหมดถูกเขียนไปยังสตรีมข้อมูล แปลงเป็นสตริงที่คั่นด้วย กันยายน และเสร็จสิ้น ปลาย. อาร์กิวเมนต์พารามิเตอร์ กันยายน и ปลาย มีประเภทสตริงด้วย ซึ่งไม่สามารถระบุได้เมื่อใช้ค่าเริ่มต้น
พารามิเตอร์ กันยายน
ค่าของพารามิเตอร์ทั้งหมด พิมพ์ ถูกอธิบายว่าเป็นอาร์กิวเมนต์ของคีย์เวิร์ด กันยายน, ปลาย, เนื้อไม่มีมัน, ล้าง. ถ้าพารามิเตอร์ กันยายน ไม่ได้ระบุไว้ ค่าดีฟอลต์จะถูกนำไปใช้: กันยายน=”และวัตถุเอาต์พุตจะถูกคั่นด้วยช่องว่าง ตัวอย่าง:
พิมพ์(1, 2, 3)
1 2 3
เป็นข้อโต้แย้ง กันยายน คุณสามารถระบุค่าอื่นได้ เช่น
- ขาดตัวคั่น กันยายน=»;
- เอาต์พุตบรรทัดใหม่ ก.ย. ='ไม่';
- หรือบรรทัดใด ๆ :
พิมพ์(1, 2, 3, sep='คำคั่น')
1 ตัวคั่นคำ 2 ตัวคั่นคำ 3
พารามิเตอร์ ปลาย
ตามค่าเริ่มต้น ปลาย='n'และผลลัพธ์ของวัตถุลงท้ายด้วยการขึ้นบรรทัดใหม่ การแทนที่ค่าเริ่มต้นด้วยอาร์กิวเมนต์อื่น เช่น ปลาย=“จะเปลี่ยนรูปแบบของข้อมูลผลลัพธ์:
print('one_', end=»)
print('two_', end=»)
พิมพ์ ('สาม')
หนึ่งสองสาม
พารามิเตอร์ เนื้อไม่มีมัน
การทำงาน พิมพ์ () รองรับการเปลี่ยนเส้นทางเอาต์พุตผ่านพารามิเตอร์ เนื้อไม่มีมันซึ่งโดยค่าเริ่มต้นหมายถึง SYS.แย่ - เอาต์พุตมาตรฐาน ค่าสามารถเปลี่ยนเป็น sys.stdin or sys.stderr. ไฟล์วัตถุ สเตดิน นำไปใช้กับอินพุตและ สตเดอร์ เพื่อส่งคำแนะนำล่ามและข้อความแสดงข้อผิดพลาด การใช้พารามิเตอร์ เนื้อไม่มีมัน คุณสามารถตั้งค่าเอาต์พุตเป็นไฟล์ได้ ไฟล์เหล่านี้อาจเป็นไฟล์ .csv หรือ .txt วิธีที่เป็นไปได้ในการเขียนสตริงลงในไฟล์:
fileitem = เปิด ('printfile.txt', 'a')
การทดสอบ def (วัตถุ):
สำหรับองค์ประกอบในวัตถุ:
พิมพ์ (องค์ประกอบ ไฟล์ = รายการไฟล์)
ไฟล์รายการ.ปิด()
ทดสอบ([10,9,8,7,6,5,4,3,2,1])
ที่ผลลัพธ์ องค์ประกอบของรายการจะถูกเขียนถึง พิมพ์ไฟล์.TXT หนึ่งรายการต่อบรรทัด
พารามิเตอร์ ล้าง
พารามิเตอร์นี้เกี่ยวข้องกับการบัฟเฟอร์ของสตรีมข้อมูล และเนื่องจากเป็นบูลีนจึงสามารถรับค่าได้สองค่า − จริง и เท็จ. โดยค่าเริ่มต้น ตัวเลือกจะถูกปิดใช้งาน: ล้าง=เท็จ. ซึ่งหมายความว่าการบันทึกข้อมูลจากบัฟเฟอร์ภายในไปยังไฟล์จะเกิดขึ้นหลังจากปิดไฟล์หรือหลังจากการเรียกโดยตรงไปยัง ล้าง (). เพื่อบันทึกหลังจากการโทรแต่ละครั้ง พิมพ์ () พารามิเตอร์จะต้องได้รับการกำหนดค่า จริง:
file_flush = เปิด (r'file_flush.txt', 'a')
พิมพ์("บันทึกเส้นвไฟล์«, ไฟล์=file_flush, flush=True)
พิมพ์("บันทึกที่สองเส้นвไฟล์«, ไฟล์=file_flush, flush=True)
file_flush.ปิด()
อีกตัวอย่างหนึ่งของการใช้พารามิเตอร์ ล้าง โดยใช้โมดูลเวลา:
ในกรณีนี้ ข้อโต้แย้ง จริง พารามิเตอร์ ล้าง จะอนุญาตให้แสดงตัวเลขทีละตัวในสามวินาที ในขณะที่โดยค่าเริ่มต้น ตัวเลขทั้งหมดจะแสดงบนหน้าจอหลังจากผ่านไป 15 วินาที เพื่อดูผลของพารามิเตอร์ด้วยสายตา ล้างจะดีกว่าถ้าเรียกใช้สคริปต์ในคอนโซล ความจริงก็คือเมื่อใช้เว็บเชลล์บางตัวโดยเฉพาะ Jupyter Notebook โปรแกรมจะใช้งานแตกต่างกัน (โดยไม่คำนึงถึงพารามิเตอร์ ล้าง).
การพิมพ์ค่าตัวแปรด้วยการพิมพ์ ()
เมื่อแสดงสตริงที่มีค่าที่กำหนดให้กับตัวแปร ก็เพียงพอที่จะระบุตัวระบุที่ต้องการ (ชื่อตัวแปร) คั่นด้วยเครื่องหมายจุลภาค ไม่ควรระบุชนิดของตัวแปร เนื่องจาก พิมพ์ แปลงข้อมูลทุกประเภทเป็นสตริง นี่คือตัวอย่าง:
เอ = 0
b = 'Python ตั้งแต่เริ่มต้น'
พิมพ์ (a,'- จำนวน, а',ข,'– เส้น.')
0 คือตัวเลขและ Python ตั้งแต่เริ่มต้นคือสตริง
เครื่องมืออื่นสำหรับส่งผ่านค่าตัวแปรไปยังเอาต์พุตคือ method รูป. พิมพ์ ในเวลาเดียวกัน มันทำหน้าที่เป็นเทมเพลตซึ่งแทนที่จะระบุชื่อตัวแปรในวงเล็บปีกกา ดัชนีของอาร์กิวเมนต์ตำแหน่งจะถูกระบุ:
เอ = 0
b = 'Python ตั้งแต่เริ่มต้น'
พิมพ์('{0} คือตัวเลขและ {1} คือสตริง'.รูป(a,b))
0 คือตัวเลขและ Python ตั้งแต่เริ่มต้นคือสตริง
แทน รูป สามารถใช้สัญลักษณ์ % ซึ่งทำงานบนหลักการเดียวกันของตัวยึดตำแหน่ง (ในตัวอย่างก่อนหน้านี้ วงเล็บปีกกาทำหน้าที่เป็นตัวยึดตำแหน่ง) ในกรณีนี้ หมายเลขดัชนีจะถูกแทนที่ด้วยชนิดข้อมูลที่ส่งคืนโดยฟังก์ชัน:
- ตัวยึดตำแหน่ง %d ใช้สำหรับข้อมูลตัวเลข
- ตัวยึดตำแหน่ง %s มีไว้สำหรับสตริง
เอ = 0
b = 'Python ตั้งแต่เริ่มต้น'
พิมพ์('%d เป็นตัวเลขและ %s – สตริง.'%(a,b))
0 คือตัวเลขและ Python ตั้งแต่เริ่มต้นคือสตริง
ถ้าแทนตัวยึดตำแหน่งสำหรับจำนวนเต็ม %d ระบุ %sฟังก์ชัน พิมพ์ จะแปลงตัวเลขเป็นสตริงและรหัสจะทำงานอย่างถูกต้อง แต่เมื่อเปลี่ยน %s on %d ข้อความแสดงข้อผิดพลาดจะปรากฏขึ้นเนื่องจากไม่มีการแปลงกลับ
สรุป
การใช้ฟังก์ชัน พิมพ์ สามารถใช้ตัวเลือกเอาต์พุตข้อมูลต่างๆ ได้ นอกจากวิธีการที่อธิบายไว้ในบทความนี้แล้ว ยังมีวิธีอื่นๆ ในการใช้เครื่องมือนี้ ซึ่งจะพร้อมใช้งานเมื่อคุณเจาะลึกเข้าไปในโลกของการเขียนโปรแกรม Python