มีหลายวิธีในการพิมพ์บางสิ่งใน Ruby
นี่คือสิ่งที่มีประโยชน์มากที่สุด :
- วาง
- พิมพ์
- p
แต่สิ่งเหล่านี้แตกต่างกันอย่างไร
และเมื่อใดที่คุณควรใช้อย่างใดอย่างหนึ่ง ?
นั่นคือสิ่งที่คุณจะได้เรียนรู้ในบทความนี้!
วิธีการพิมพ์โดยไม่ต้องขึ้นบรรทัดใหม่
เมื่อต้องการพิมพ์บางอย่างบนหน้าจอให้ผู้ใช้ดู ปกติคุณใช้ puts
.
ถูกใจสิ่งนี้ :
puts "Hello there!"
ใส่บรรทัดใหม่ที่ท้ายข้อความของคุณโดยอัตโนมัติทุกครั้งที่ใช้
หากคุณไม่ต้องการขึ้นบรรทัดใหม่ ให้ใช้ print
.
ตัวอย่าง :
print 123
ครั้งต่อไปที่คุณ พิมพ์
บางอย่างจะเป็นบรรทัดเดียวกับข้อความสุดท้ายของคุณ
ตัวอย่าง :
print 123 print 456 print 789 123456789
แต่ถ้าคุณใช้การพุท :
puts 123 puts 456 puts 789 123 456 789
ทุกข้อความมีบรรทัดของตัวเอง!
ทำให้ยังปฏิบัติต่ออาร์เรย์ในลักษณะที่ต่างออกไป
ตัวอย่าง :
puts [1,2] 1 2 print [1,2] [1,2]
นี่คือความแตกต่างอีกประการหนึ่ง :
พยายามแปลงทุกอย่างให้เป็นสตริง (โดยการเรียก to_s
)
เหตุใดจึงสำคัญ
เพราะถ้าคุณกำลังพยายาม ใส่
อาร์เรย์ที่มีค่าเป็นศูนย์…
มันจะแสดงบรรทัดว่าง!
ตัวอย่าง :
puts [1,nil,nil,2] 1 2
สรุป ใส่
&พิมพ์
:
- แปลงสิ่งต่าง ๆ เป็นสตริง แม้ว่าจะหมายถึงสตริงว่างก็ตาม
เฉพาะ ใส่
:
- เพิ่มบรรทัดใหม่ต่อท้ายข้อความของคุณ
- แสดงองค์ประกอบอาร์เรย์หนึ่งบรรทัดต่อบรรทัด
ดีบักเอาต์พุตด้วย P
แล้ว put vs p ล่ะ?
p
เป็นวิธีการที่แสดงวัตถุเวอร์ชัน "ดิบ" มากขึ้น
ตัวอย่างเช่น :
> puts "Ruby Is Cool" Ruby Is Cool > p "Ruby Is Cool" "Ruby Is Cool"
p
คืออะไร p
มีประโยชน์สำหรับ?
กำลังแก้จุดบกพร่อง
เมื่อคุณกำลังมองหาสิ่งต่างๆ เช่น (ปกติจะมองไม่เห็น) อักขระขึ้นบรรทัดใหม่ หรือคุณต้องการให้แน่ใจว่าค่าบางอย่างถูกต้อง ให้ใช้ p
.
ความแตกต่างอีกอย่างหนึ่ง :
- ทำให้คืนค่าเป็นศูนย์เสมอ
- p ส่งคืนวัตถุที่คุณส่งไป
นี่เป็นข้อแตกต่างทางเทคนิค…
แต่มันอาจปรากฏขึ้นหากคุณพยายาม วาง
ตัวแปรเป็นบรรทัดสุดท้ายของเมธอด และคุณกำลังใช้ค่าส่งคืนของเมธอดนั้น
ตัวอย่าง :
def numbers puts 123 end numbers # nil
ในตัวอย่างนี้ ตัวเลข
วิธีจะแสดง 123 บนหน้าจอ แต่ค่าที่ส่งคืนจะเป็น ไม่มี
.
ถ้าคุณลอง :
result = numbers
แล้ว ผลลัพธ์
จะ ไม่มี
, แทนที่จะเป็น 123.
แต่ถ้าคุณใช้ p
แล้วมันจะได้ผล
พิมพ์สวย
Ruby ยังมีวิธีการพิมพ์แบบอื่น
เรียกว่า pp
.
นี่เหมือน p
แต่จะพิมพ์ hashes &arrays ขนาดใหญ่ด้วยวิธีที่ดีกว่า
โปรดทราบว่า Ruby เวอร์ชันเก่า (ก่อน 2.4) ต้องทำ require 'pp'
เพื่อเข้าถึงวิธีนี้
วิดีโอสอน
สรุป
คุณได้เรียนรู้ความแตกต่างระหว่าง puts, print &p ใน Ruby!
ตอนนี้เป็นเวลาเวลาฝึกซ้อม .
หากคุณฝึกฝนสิ่งใหม่ทันที คุณจะรวมข้อมูลนี้เข้ากับฐานความรู้ของคุณ ถ้าคุณไม่ฝึกฝน คุณจะลืมและคุณจะไม่ก้าวหน้า