การรับค่าข้อมูลมากกว่า 1 ตัวแปรใน Python นิยมใช้วิธีป้อนข้อมูลโดยใช้ฟังก์ชัน input() ข้อมูลที่ป้อนเข้ามาแต่ละค่าจะใช้ช่องว่างเป็นตัวแบ่งค่าตามที่กำหนด การรับค่าข้อมูลด้วยฟังก์ชัน input() เป็นวิธีที่สะดวกในการรับค่าข้อมูลจากผู้ใช้ผ่านทางคีย์บอร์ด โดยค่าที่ได้จะถูกเก็บไว้ในตัวแปรที่เรากำหนดขึ้นมา การใช้งานฟังก์ชัน input() ตัวแปร : ชื่อที่ตั้งขึ้นเพื่อใช้เก็บข้อมูล input() : ฟังก์ชัน input() เพื่อรับค่าข้อมูลผ่านทางแป้นพิมพ์ “ข้อความที่ต้องการแสดง” : ข้อความที่กำหนดให้แสดงออกทางหน้าจอเพื่อบ่งบอกให้ผู้ใช้ทราบว่าต้องป้อนข้อมูลอะไร ตัวอย่างการใช้งานฟังก์ชัน input() อธิบาย บรรทัดที่ 1 ใช้ฟังก์ชัน input รับข้อมูลจากผู้ใช้ผ่านทางแป้นพิมพ์ กำหนดค่าให้เก็บข้อมูลด้วยตัวแปร name โดยมี ข้อความ “กรุณากรอกชื่อ” แสดงขึ้นบนหน้าจอ บรรทัดที่ 2 ใช้ฟังก์ชัน input รับข้อมูลจากผู้ใช้ผ่านทางแป้นพิมพ์ กำหนดค่าให้เก็บข้อมูลด้วยตัวแปร surname โดยมี ข้อความ “กรุณากรอกนามสกุล” แสดงขึ้นบนหน้าจอ บรรทัดที่ 3 ใช้ฟังก์ชัน print แสดงผลลัพธ์ออกทางหน้าจอ โดยแสดงข้อความ “ชื่อ” ก่อนการแสดงค่าในตัวแปร name บรรทัดที่ 4 ใช้ฟังก์ชัน print แสดงผลลัพธ์ออกทางหน้าจอ โดยแสดงข้อความ “นามสกุล” ก่อนการแสดงค่าในตัวแปร surname ค่าที่ได้รับจากฟังก์ชัน input() จะเป็นข้อมูลชนิด string (ข้อความ) ไม่ว่าจะป้อนตัวเลขลงไป ค่าที่ได้จะถูกเก็บในรูปแบบข้อมูลชนิด string เท่านั้น หากต้องการให้เป็นชนิดข้อมูลอื่น จำเป็นต้องมีการแปลงชนิดข้อมูล ตัวอย่างการแปลงชนิดข้อมูล ผลลัพธ์ อธิบาย บรรทัดที่ 1 เป็นการใช้งานสองฟังก์ชัน โดยฟังก์ชัน int() ใช้แปลงข้อมูลที่เป็นข้อความให้เป็นเลขจำนวนเต็ม ตามด้วยฟังก์ชัน input() ให้แสดงข้อความ “กรุณากรอกตัวเลขอายุ>>>” เพื่อให้ผู้ใช้ป้อนข้อมูล แล้วเก็บค่าที่ได้ในตัวแปร age บรรทัดที่ 2 แสดงผลลัพธ์ออกทางหน้าจอด้วยฟังก์ชัน print() โดยประกอบไปด้วยข้อความที่แสดง “อายุของคุณคือ” ตามด้วยค่าของตัวแปร age และข้อความ “ปี” รับค่าข้อมูลมากกว่า 1 ตัว การรับค่าข้อมูลมากกว่า 1 ตัว มีวิธีที่หลากหลายสามารถเลือกใช้งานได้ตามความเหมาะสม ในบทความนี้จะเป็นการใช้งานฟังก์ชัน input() ร่วมกับฟังก์ชันอื่นเพื่อใช้ในการรับค่าข้อมูลได้หลายค่า 1. รับค่าข้อมูลแต่ละตัวแยกกัน ผลลัพธ์ อธิบาย บรรทัดที่ 1 รับค่าจากผู้ใช้มาเก็บไว้ในตัวแปรชื่อ name โดยแสดงข้อความ “กรุณากรอกชื่อ>>> ” บรรทัดที่ 2 รับค่าจากผู้ใช้มาเก็บไว้ในตัวแปรชื่อ surname โดยแสดงข้อความ “กรุณากรอกนามสกุล>>> ” บรรทัดที่ 3 รับค่าจากผู้ใช้มาเก็บไว้ในตัวแปรชื่อ age โดยแสดงข้อความ “กรุณากรอกอายุ>>> ” เนื่องจากการรับข้อมูลด้วยฟังก์ชัน input() ค่าที่ได้จะเป็นข้อมูลประเภทข้อความจึงต้องใช้งานฟังก์ชัน int() แปลงข้อมูลให้เป็นข้อมูลชนิดจำนวนเต็ม บรรทัดที่ 4 แสดงผลลัพธ์ออกทางหน้าจอด้วยคำสั่ง print() 2. รับค่าข้อมูลจำนวนเต็ม ผลลัพธ์ อธิบาย บรรทัดที่ 1 รับค่าจากผู้ใช้โดยใช้ฟังก์ชัน int() แปลงค่าเป็นชนิดข้อมูลจำนวนเต็ม ระบุข้อความ “ราคาสินค้า” บรรทัดที่ 2 รับค่าจากผู้ใช้โดยใช้ฟังก์ชัน int() แปลงค่าเป็นชนิดข้อมูลจำนวนเต็ม ระบุข้อความ “จำนวนสินค้า” บรรทัดที่ 3 นำตัวแปร num1 และ num2 มาคูณกัน แล้วเก็บค่าที่ได้ในตัวแปร total บรรทัดที่ 4 แสดงผลลัพธ์ทางหน้าจอด้วยฟังก์ชัน print() แสดงข้อความ “ราคาสินค้ารวมทั้งหมดเป็น:” แสดงค่าของตัวแปร total โดยคั่นด้วยเครื่องหมาย “,” ตามตัวอย่าง แสดงข้อความ “บาท” หลังจากแสดงค่าตัวแปร total โดยให้คั่นด้วยเครื่องหมาย “,” 3. รับค่าข้อมูลหลายตัวในบรรทัดเดียวกัน ผลลัพธ์ อธิบาย บรรทัดที่ 1 รับข้อมูลหลายค่าโดยมีการเก็บค่าไว้ในตัวแปร name,surname และ age ตามลำดับ ใช้งานฟังก์ชัน input() รับค่าจากผู้ใช้งาน โดยระบุข้อความ “กรุณากรอกชื่อ นามสกุล อายุ (คั่นด้วย , ):” split(‘,’) แบ่งข้อมูลออกเป็นส่วนๆ โดยใช้เครื่องหมายจุลภาค (,) เป็นตัวแบ่ง และเก็บค่าไว้ในตัวแปร name,surname และ age ตามลำดับ บรรทัดที่ 2 แสดงผลออกทางหน้าจอพร้อมข้อความและค่าตัวแปร name บรรทัดที่ 3 แสดงผลออกทางหน้าจอพร้อมข้อความและค่าตัวแปร surname บรรทัดที่ 4 แสดงผลออกทางหน้าจอพร้อมข้อความและค่าตัวแปร age 4. รับค่าข้อมูลหลายตัวในบรรทัดเดียวกัน คั่นด้วยช่องว่าง ผลลัพธ์ อธิบาย บรรทัดที่ 1 รับข้อมูลหลายค่าโดยมีการเก็บค่าไว้ในตัวแปร num1,num2 และ num3 ตามลำดับ รับค่าข้อมูลด้วยฟังก์ชัน input() แสดงข้อความ “กรุณากรอกตัวเลขสามจำนวน (คั่นด้วยการเว้นวรรค): ” split() เป็นการแบ่งข้อมูลออกเป็นส่วนๆ โดยใช้การเว้นวรรคเป็นตัวแบ่ง แล้วนำค่าที่ได้ไปเก็บไว้ในตัวแปร num1,num2 และ num3 ตามลำดับ บรรทัดที่ 2 แสดงผลลัพธ์ออกทางหน้าจอด้วยฟังก์ชัน print() แสดงข้อความ “ตัวเลขที่ป้อนเข้าไปคือ:” ตามด้วยการแสดงค่าของตัวแปร num1,num2 และ num3 ตามลำดับ 5. ใช้ list comprehension รับค่าหลายตัว ผลลัพธ์ อธิบาย บรรทัดที่ 1 รับค่าตัวเลขหลายตัวจากผู้ใช้ โดยใช้ช่องว่างในการแบ่งตัวเลขแต่ละตัว แล้วนำตัวเลขแต่ละตัวนั้นมาเก็บใน list ชื่อ numbers int(i) : เปลี่ยนข้อมูลชนิดข้อความให้เป็นข้อมูลชนิดจำนวนเต็ม for i in : วนลูปเพื่อแปลงข้อมูลชนิดข้อความให้เป็นข้อมูลชนิดจำนวนเต็ม input(“กรุณากรอกตัวเลขหลายตัว (คั่นด้วยการเว้นวรรค): ”) : รับค่าที่ป้อนเข้ามาพร้อมแสดงข้อความ “กรุณากรอกตัวเลขหลายตัว (คั่นด้วยการเว้นวรรค): ” split() : แยกข้อมูลที่ผู้ใช้ป้อนเข้ามา โดยใช้ช่องว่างในการแบ่ง บรรทัดที่ 2 แสดงผลลัพธ์ออกทางหน้าจอ โดยแสดงข้อความ “ตัวเลขที่คุณกรอกคือ:” พร้อมแสดงค่าของตัวแปร numbers 6. ใช้ฟังก์ชัน map ผลลัพธ์ อธิบาย บรรทัดที่ 1 เมื่อผู้ใช้งานป้อนข้อมูลเข้ามาจะถูกเก็บค่าไว้ในตัวแปร numbers list(…) : นำผลลัพธ์ที่ได้จาก map มาแปลงเป็น list อีกครั้ง map(int,…): นำฟังก์ชัน int ไปแปลงตัวเลขที่อยู่ในรูปแบบข้อความให้เป็นจำนวนเต็ม input(“กรุณากรอกตัวเลขหลายจำนวน (คั่นด้วยช่องว่าง): ”) : แสดงข้อความ “กรุณากรอกตัวเลขหลายจำนวน (คั่นด้วยช่องว่าง): ” พร้อมรับข้อมูลจากผู้ใช้ที่ป้อนเข้ามา .split() : แบ่งข้อมูลที่ผู้ใช้ป้อนเข้ามาออกเป็นส่วนๆ โดยใช้ช่องว่างเป็นตัวแบ่ง บรรทัดที่ 2 แสดงผลลัพธ์ทางหน้าจอด้วยฟังก์ชัน print() โดยแสดงข้อความ “ตัวเลขที่คุณกรอกคือ:” ตามด้วยค่าที่อยู่ในตัวแปร numbers 7. รับค่าหลายตัวแบบวนลูป ผลลัพธ์ อธิบาย บรรทัดที่ 1 สร้างลิสต์ว่างที่มีชื่อว่า name ขึ้นมา บรรทัดที่ 2 วนลูปสามรอบ range(3) จะสร้างค่าตัวเลขที่เพิ่มขึ้นทีละ 1 โดยเริ่มต้นจาก 0 บรรทัดที่ 3 รับข้อมูลจากผู้ใช้ด้วยฟังก์ชัน input() .format(i+1) : จะแทนที่ {} ด้วย i+1 ทำให้ค่าที่ได้เป็น 1,2 และ 3 ตามลำดับในการวนลูป value : เก็บค่าของผู้ใช้งานไว้ในตัวแปรชื่อ value บรรทัดที่ 4 นำค่าที่ได้จากตัวแปร value มาเพิ่มในลิสต์ name บรรทัดที่ 5 ใช้ฟังก์ชัน print() แสดงผลลัพธ์ออกทางหน้าจอ พร้อมกับแสดงค่าตัวแปร name การรับค่าหลายตัวสามารถใช้งานฟังก์ชัน input() ร่วมกับฟังก์ชั่นอื่นๆเพื่อใช้ในการรับค่าหลายตัวได้ การรับข้อมูลผ่าน input() ข้อมูลที่รับเข้ามาจะเป็นชนิดข้อความเสมอ หากต้องการนำไปทำการคำนวณ ต้องแปลงชนิดข้อมูลก่อน การแปลงชนิดข้อมูลที่พบได้บ่อยเช่น int() แปลงเป็นจำนวนเต็ม float() แปลงเป็นจำนวนทศนิยม เป็นต้น ภาพประกอบและภาพหน้าปกโดย สาระนายพัช บทความที่เกี่ยวข้อง ชนิดข้อมูลพื้นฐานใน Python เรียนรู้คำสั่ง print ในภาษาโปรแกรม Python เปิดประสบการณ์ความบันเทิงที่หลากหลายสุดปัง บน App TrueID โหลดเลย ฟรี !