เพื่อพิมพ์โดยไม่ขึ้นบรรทัดใหม่ใน Python 3 ให้เพิ่มอาร์กิวเมนต์เพิ่มเติมในฟังก์ชัน print บอกโปรแกรมว่าคุณไม่ต้องการสตริงถัดไปอยู่บนบรรทัดใหม่ นี่คือตัวอย่าง: print("Hello there!", end = '') ฟังก์ชัน print ถัดไปจะอยู่บนบรรทัดเดียวกัน
เมื่อคุณเขียนโปรแกรม คุณอาจต้องการพิมพ์ค่าไปยังหน้าจอ แต่เก็บมันอยู่บนบรรทัดเดียวกับค่าล่าสุดที่คุณพิมพ์ ตัวอย่างเช่น คุณอาจต้องการให้ชื่อและนามสกุลของผู้ใช้ปรากฏบนบรรทัดเดียวกัน แต่คุณจะพิมพ์โดยไม่ขึ้นบรรทัดใหม่ใน Python ได้อย่างไร?
ในบทช่วยสอนนี้ เราจะแยกวิเคราะห์ว่าการพิมพ์โดยไม่ขึ้นบรรทัดใหม่ใน Python ทำงานอย่างไร ก่อนที่เราจะเริ่ม มาสำรวจพื้นฐานของวิธีการทำงานของสตริงใน Python
บททบทวนสตริง (String Refresher)
สตริงคือลำดับของตัวอักษร ตัวเลข สัญลักษณ์ และช่องว่าง สตริงเป็นชนิดข้อมูลสำคัญในภาษาโปรแกรมมิ่งส่วนใหญ่ โดยเฉพาะ Python เมื่อคุณทำงานกับสตริง มีหลายกรณีที่คุณจะต้องการทำให้มันอ่านง่ายขึ้นผ่านเครื่องหมายวรรคตอน การเพิ่มบรรทัดใหม่ หรือการย้ายข้อความไปอยู่บนบรรทัดเดียวกัน
ใน Python สตริงถูกกำหนดดังนี้:
ourString = "This is our string!"
อีกทางหนึ่ง คุณสามารถใช้เครื่องหมายอ้างอิงเดี่ยว ‘’ เพื่อประกาศสตริงของคุณได้ ตราบใดที่สตริงเริ่มและจบด้วยประเภทเครื่องหมายอ้างอิงเดียวกัน อย่างไรก็ตาม หากสตริงของคุณมีเครื่องหมายอ้างอิงเดี่ยว คุณอาจต้องการใช้เครื่องหมายอ้างอิงคู่แทนและในทางกลับกัน มิฉะนั้นสตริงของคุณจะคืนค่าข้อผิดพลาด
วิธีพิมพ์โดยไม่ขึ้นบรรทัดใหม่ใน Python
โดยทั่วไป เมื่อคุณพิมพ์สตริงใน Python พวกมันจะปรากฏบนบรรทัดที่ต่างกัน นี่คือตัวอย่าง:
print("First test string.") print("Second test string.") โค้ดนี้จะคืนค่าดังต่อไปนี้:
First test string. Second test string.
ถ้าเราต้องการให้ทั้งสองสตริงนี้ปรากฏบนบรรทัดเดียวกัน? มาแยกวิเคราะห์สองวิธีที่คุณสามารถใช้เพื่อบรรลุเป้าหมายนี้ใน Python 2.x และ Python 3.x ทั้งสอง
พิมพ์โดยไม่ขึ้นบรรทัดใหม่ใน Python 3.x
การพิมพ์โดยไม่ขึ้นบรรทัดใหม่เป็นเรื่องง่ายใน Python 3 เพื่อพิมพ์โดยไม่ขึ้นบรรทัดใหม่ใน Python คุณต้องเพิ่มอาร์กิวเมนต์เพิ่มเติมในฟังก์ชัน print ของคุณที่จะบอกโปรแกรมว่าคุณไม่ต้องการสตริงถัดไปอยู่บนบรรทัดใหม่
นี่คือตัวอย่าง:
print("Hello there!", end = '') print("It is a great day.") เอาต์พุตสำหรับโค้ดของเราคือ:
Hello there!It is a great day.
ตอนนี้โค้ดของเราถูกพิมพ์บนบรรทัดเดียวกันแล้ว
สังเกตว่าโค้ดของเราไม่ได้เพิ่มช่องว่างระหว่างสตริงสองตัวของเรา แต่ถ้าเราต้องการช่องว่างระหว่างสตริงใหม่สองตัวที่อยู่บนบรรทัดเดียวกัน? ทั้งที่เราต้องทำคือเพิ่มตัวอักษรช่องว่างในอาร์กิวเมนต์ end ของเรา
ในตัวอย่างข้างต้น เรามีสตริงว่างในเครื่องหมายอ้างอิงของเรา ซึ่งหมายความว่าไม่มีช่องว่างถูกเพิ่มระหว่างข้อความของเราบนบรรทัดใหม่ อย่างไรก็ตาม หากเราเพิ่มช่องว่างในเครื่องหมายอ้างอิง เราจะมีช่องว่างหนึ่งในโค้ดของเรา นอกจากนี้ คุณสามารถเพิ่มอะไรก็ได้ในพารามิเตอร์ end และนั่นจะเป็นสิ่งที่แยกสตริงของคุณบนบรรทัดใหม่
ตัวอย่างเช่น:
print("Hello there!", end = ' It\'s Friday. ') print("It is a great day.") โค้ดของเราจะคืนค่า:
Hello there! It's Friday. It is a great day.
พิมพ์โดยไม่ขึ้นบรรทัดใหม่ใน Python 2.x
หากคุณต้องการพิมพ์ข้อความของคุณบนบรรทัดเดียวกันใน Python 2 คุณควรใช้คอมม่า (comma) ที่ท้ายคำสั่ง print นี่คือตัวอย่างในการทำงาน:
print "Hello there!", print "It is a great day."
โค้ดนี้จะคืนค่าดังต่อไปนี้:
Hello there! It is a great day.
มีค่าพิจารณาว่า แม้จะไม่มีบรรทัดใหม่ ตัวอักษรช่องว่างยังคงถูกใช้เพื่อแบ่งข้อความของเรา นี่เป็นประโยชน์เพราะในกรณีส่วนใหญ่เราจะต้องการข้อมูลของเราถูกเว้นระยะห่าง หากเรารวมสองประโยค ตัวอย่างเช่น เราจะต้องการช่องว่างระหว่างพวกมัน
กับที่กล่าว หากคุณต้องการพิมพ์ข้อความโดยไม่ขึ้นบรรทัดใหม่และไม่มีตัวอักษรช่องว่าง มีอีกวิธีหนึ่งที่คุณสามารถใช้ ได้โดยการใช้โมดูล sys—ซึ่งมาติดตั้งมากับ Python—คุณสามารถพิมพ์ได้อย่างแน่นอนตามที่คุณขอโปรแกรมพิมพ์ นี่คือตัวอย่าง:
import sys sys.stdout.write("Hello there!") sys.stdout.write("It is a great day.") เอาต์พุตสำหรับโค้ดของเราคือดังนี้:
Hello there!It is a great day.
มีอะไรเยอะมากในโค้ดนี้ มาแยกวิเคราะห์ บรรทัดแรก เรา import ไลบรารี sys ซึ่งมีฟังก์ชันที่เราต้องการพิมพ์โดยไม่ขึ้นบรรทัดใหม่และไม่มีช่องว่างว่าง บรรทัดต่อไป เราบอกระบบให้พิมพ์ข้อความของเราอย่างแน่นอนตามที่มันคือ โดยไม่มีช่องว่าง ดังนั้น เราจึงได้เอาต์พุทที่เราได้ข้างต้น: สตริงสองตัวของเราบนบรรทัดเดียวกัน แต่ไม่มีช่องว่างแบ่งพวกมัน
สรุป
มันง่ายแค่นั้น! ในบทช่วยสอนนี้ เราแยกวิเคราะห์วิธีพิมพ์โดยไม่ขึ้นบรรทัดใหม่ใน Python ตามที่เราพูดไป เทคนิคการเขียนโปรแกรมนี้อาจมีประโยชน์หากคุณต้องการแสดงข้อมูลของคุณในลักษณะเฉพาะที่เกี่ยวข้องกับการแสดงข้อความทั้งหมดบนบรรทัดเดียวกัน
ใน Python 2.x เราสามารถเพิ่มคอมม่าท้ายคำสั่ง print เพื่อย้ายข้อความไปบนบรรทัดเดียวกัน และใน Python 3.x เราต้องเพิ่มพารามิเตอร์ end