อินพุตหลายรายการจากผู้ใช้ใน Python | โปรแกรมป้อนข้อมูล Python
เผยแพร่แล้ว: 2021-01-29สารบัญ
บทนำ
โปรแกรมเมอร์มักต้องการสร้างโปรแกรมที่ผู้ใช้สามารถป้อนอินพุตหลายตัวใน Python จากนั้นดำเนินการหลายอย่างกับอินพุตที่ผู้ใช้ให้มา ฟังก์ชัน inbuilt บางฟังก์ชันสามารถใช้หลายครั้งเพื่อรับอินพุตโดยตรงจากผู้ใช้ เช่น raw_input () และอินพุต () ใน data science การเขียนฟังก์ชันเดียวกันหลายครั้งในโค้ดจะทำให้ไฟล์มีขนาดใหญ่และเพิ่มความซับซ้อนของโค้ด ในบล็อกนี้ เราจะพูดถึงวิธีการต่างๆ ที่รวบรวมอินพุตหลายรายการจากผู้ใช้ในบรรทัดเดียวและลดความยาวของโค้ด
- แยก () ฟังก์ชั่น
- แผนที่ () ฟังก์ชั่น
- รายการความเข้าใจ
รวบรวมอินพุตหลายตัวใน Python จาก User
การใช้ฟังก์ชัน Split ()
ด้วยความช่วยเหลือของฟังก์ชัน split () นักพัฒนาสามารถรวบรวมอินพุตหลายตัวใน Python จากผู้ใช้ได้อย่างง่ายดาย และกำหนดอินพุตทั้งหมดให้กับตัวแปรที่เกี่ยวข้อง นักพัฒนาสามารถระบุอักขระที่จะใช้เป็นตัวคั่นเพื่อแยกข้อมูลที่ผู้ใช้ให้มา หากผู้พัฒนาไม่ได้จัดเตรียมตัวคั่นใดๆ การป้อนข้อมูลของผู้ใช้จะถูกทำลายโดยช่องว่างสีขาว โดยปกติ วิธีนี้ใช้เพื่อแยกสตริงหลามออกเป็นหลายสตริงย่อย แต่ก็สามารถใช้เพื่อรวบรวมอินพุตหลายรายการจากผู้ใช้ได้
ไวยากรณ์ที่ใช้สำหรับวิธี split () มีดังนี้:
var1, var2 = อินพุต (“พิมพ์ว่าคุณต้องการรวบรวมอินพุตประเภทใดจากผู้ใช้”) split (“/”) สำหรับ / แยกอินพุต
var1, var2 = อินพุต (“พิมพ์ว่าคุณต้องการรวบรวมอินพุตประเภทใดจากผู้ใช้”) split () สำหรับช่องว่างสีขาวแยก input
ตัวอย่างของฟังก์ชัน Split ()
# โปรแกรม Python สำหรับแยกสตริง Python เป็นสตริงย่อย # รับอินพุตหลายรายการจากผู้ใช้โดยใช้ฟังก์ชัน split () # รวบรวมสามอินพุตในแต่ละครั้ง a, ,b, c = อินพุต (“ป้อนอายุลูกของคุณ: “).split () พิมพ์("ป้อนอายุลูกชายคนโตของคุณ: ", ก) พิมพ์(“ป้อนอายุลูกสาวของคุณ:“, b) พิมพ์(“ป้อนอายุลูกชายคนเล็กของคุณ:“, c) พิมพ์() # รวบรวมสี่อินพุตในแต่ละครั้ง a, b, c, d = input("ป้อนจำนวนผลไม้: ").split() พิมพ์("ป้อนจำนวนแอปเปิ้ลที่คุณมี: ", ก) พิมพ์("ป้อนจำนวนส้มที่คุณมี: ", b) พิมพ์("ใส่จำนวนมะม่วงที่คุณมี: ", c) พิมพ์("ป้อนจำนวนกล้วยที่คุณมี: ", ง) พิมพ์() # รับสองอินพุตพร้อมกัน x, y = input("ใส่เครื่องหมาย: ").split() พิมพ์("คะแนนที่ได้จากฟิสิกส์คือ {} และเครื่องหมายที่ได้รับในวิชาเคมีคือ {}".format(x, y)) พิมพ์() |
ผลลัพธ์สำหรับโปรแกรมข้างต้นมีดังต่อไปนี้
ระบุอายุบุตรของท่าน: 25 20 14 ป้อนอายุลูกชายคนโตของคุณ: 25 ระบุอายุลูกสาวของคุณ: 20 ป้อนอายุลูกชายคนเล็กของคุณ: 14 ใส่จำนวนผลไม้: 5 15 13 23 ป้อนจำนวนแอปเปิ้ลที่คุณมี: 5 ใส่จำนวนส้มที่คุณมี: 15 ใส่จำนวนมะม่วงที่คุณมี: 13 ใส่จำนวนกล้วยที่คุณมี: 23 ใส่เครื่องหมายของคุณ: 96 84 คะแนนที่ได้จากวิชาฟิสิกส์คือ 96 และคะแนนที่ได้จากวิชาเคมีคือ 84 |
การใช้แผนที่ () ฟังก์ชั่น
map () เป็นฟังก์ชันอื่นที่นักพัฒนาใช้เพื่อรับอินพุตหลายรายการจากผู้ใช้ ไวยากรณ์สำหรับฟังก์ชัน map () มีดังนี้:
var1, var, var = map(int,input().split())
ตัวอย่างแผนที่ () ฟังก์ชั่น
#collecting หลายอินพุตใน Python โดยใช้ map () function a, b = map (int, input(“ป้อนจำนวนผลไม้ที่คุณมี: “).split()) พิมพ์("ป้อนจำนวนแอปเปิ้ลที่คุณมี: ", a) พิมพ์("ป้อนจำนวนส้มที่คุณมี: ", b) |
ผลลัพธ์สำหรับโปรแกรมข้างต้นมีดังต่อไปนี้
ใส่จำนวนผลไม้ที่คุณมี: 30 50 ป้อนจำนวนแอปเปิ้ลที่คุณมี: 30 ใส่จำนวนส้มที่คุณมี: 50 |
อ่านเพิ่มเติม: โปรแกรมรูปแบบหลาม
การใช้รายการ () ฟังก์ชั่น
List () เป็นหนึ่งในฟังก์ชันที่ใช้ในภาษา Python เพื่อกำหนดและสร้างรายการ ฟังก์ชัน List ทำงานเหมือนกับคำสั่งทางคณิตศาสตร์ในหนึ่งบรรทัด นักพัฒนายังใช้เพื่อรวบรวมอินพุตหลายรายการใน Python จากผู้ใช้ ฟังก์ชัน List () รวบรวมอินพุตหลายรายการของข้อมูลต่างๆ พร้อมกัน

ไวยากรณ์สำหรับการสร้างรายการมีดังนี้:
a, b = [afora input("พิมพ์ชนิดของข้อมูลเข้าที่คุณต้องการรวบรวมจากผู้ใช้ ").split()]
ตัวอย่างรายการ () ฟังก์ชั่น
# โปรแกรม Python สำหรับแยกสตริง Python เป็นสตริงย่อย # รับอินพุตหลายรายการจากผู้ใช้โดยใช้รายการความเข้าใจ # รับสามอินพุตในแต่ละครั้ง a, b, c = [int(a) สำหรับ a ในอินพุต(“ป้อนเครื่องหมายที่ได้รับ: “).split()] พิมพ์("ป้อนเครื่องหมายที่ได้รับในวิชาฟิสิกส์: ", a) พิมพ์("ป้อนเครื่องหมายที่ได้รับในวิชาเคมี: ", b) พิมพ์("ป้อนเครื่องหมายที่ได้รับเป็นภาษาอังกฤษ: ", c) พิมพ์() # รับสองอินพุตพร้อมกัน a, b = [int(a) สำหรับ a in input(“ป้อนอายุลูกของคุณ: “).split()] พิมพ์("ป้อนอายุลูกชายคนโต: ", ก) พิมพ์("ป้อนอายุลูกชายคนเล็ก: ", b) พิมพ์() # รับสามอินพุตพร้อมกัน A, b, c = [int(a) สำหรับ a ในอินพุต("ป้อนจำนวนผลไม้: “).split()] พิมพ์("จำนวนแอปเปิ้ลทั้งหมดคือ {} และส้มคือ {}".format(a, b)) พิมพ์() # รับหลายอินพุตพร้อมกัน a = [int(a) สำหรับ a ในอินพุต("ป้อนค่าหลายค่า: ").split()] พิมพ์("ค่าที่คุณป้อนคือ: ", a) |
ผลลัพธ์ของโปรแกรมข้างต้นมีดังต่อไปนี้
ป้อนเครื่องหมายที่ได้รับ: 94 90 96 ป้อนคะแนนที่ได้รับในวิชาฟิสิกส์: 94 ป้อนคะแนนที่ได้รับในวิชาเคมี: 90 ป้อนคะแนนที่ได้รับเป็นภาษาอังกฤษ: 96 ใส่อายุลูกของคุณ: 34 23 ป้อนอายุลูกชายคนโต: 34 ป้อนอายุลูกชายคนเล็ก: 23 ใส่จำนวนผลไม้: 76 23 จำนวนแอปเปิลทั้งหมด 76 ผล ส้ม 23 ผล ป้อนค่าหลายค่า: 23 45 76 48 90 76 ค่าที่คุณป้อนคือ: [23, 45, 76, 48, 90, 76] |
อ่านเพิ่มเติม: แนวคิดและหัวข้อโครงการ Python
บทสรุป
รหัสที่ให้ไว้ในบล็อกนี้ใช้เพื่อเป็นตัวอย่างและสามารถแก้ไขได้ตามความต้องการของแต่ละบุคคล
หากคุณอยากเรียนรู้เกี่ยวกับวิทยาศาสตร์ข้อมูล ลองดูโปรแกรม Executive PG ของ IIIT-B & upGrad ใน Data Science ซึ่งสร้างขึ้นสำหรับมืออาชีพที่ทำงานและมีกรณีศึกษาและโครงการมากกว่า 10 รายการ เวิร์กช็อปภาคปฏิบัติจริง การให้คำปรึกษากับผู้เชี่ยวชาญในอุตสาหกรรม 1 -on-1 พร้อมที่ปรึกษาในอุตสาหกรรม การเรียนรู้มากกว่า 400 ชั่วโมงและความช่วยเหลือด้านงานกับบริษัทชั้นนำ
เหตุใดการเข้าใจรายการจึงถือว่าเหนือกว่าการวนซ้ำ
ความเข้าใจรายการเป็นวิธีที่ดีกว่าในการรับอินพุตหลายรายการใน Python ดีกว่ากระบวนการวนซ้ำแบบเดิมในหลาย ๆ ด้าน:
1. ความเข้าใจรายการทำได้เร็วกว่าและกระชับกว่าลูปมาก เนื่องจากจะรวบรวมองค์ประกอบทั้งหมดก่อนและแทรกทั้งหมดเข้าด้วยกันในคราวเดียว
2. สิ่งเดียวกันกับที่ลูปทำในบล็อกสามารถทำได้ในบรรทัดเดียวโดยใช้การทำความเข้าใจรายการ ทำให้โค้ดสะอาดขึ้นและใช้งานง่ายขึ้น
3. การแก้ไขเมทริกซ์เป็นเวกเตอร์และการกรองรายการคือตัวอย่างที่ดีที่สุดบางส่วนซึ่งการเข้าใจรายการสามารถเห็นได้ดีกว่าการวนซ้ำ
ฉันจะรับอินพุตหลายรายการในโปรแกรมของฉันได้อย่างไร
Python มีหลายวิธีในการป้อนข้อมูล มีสามวิธีที่สำคัญในการป้อนข้อมูลที่กล่าวถึงด้านล่าง:
1. การใช้ split(): ฟังก์ชัน split() ใช้กันอย่างแพร่หลายในการรับอินพุตหลายรายการใน Python จากผู้ใช้ ยอมรับตัวคั่นเป็นพารามิเตอร์ที่กำหนดว่าจะใช้อักขระตัวใดในการแยกสตริง ไวยากรณ์ของฟังก์ชัน split() คือ:
string.split (ตัวคั่น, ค่าสูงสุด)
2. การใช้ map(): แผนที่ () เป็นอีกวิธีหนึ่งในการรับข้อมูลจากผู้ใช้ ไวยากรณ์ของฟังก์ชัน map() ใน Python คือ:
แผนที่(func, ite)
3. การใช้ List comprehensions: วิธีนี้เป็นวิธีที่ดีที่สุดสำหรับทั้งสามวิธี เป็นวิธีที่สะดวกและสวยงามที่สุดในการสร้างรายการใน Python อย่างไรก็ตาม เรายังรับอินพุตหลายรายการใน Python จากผู้ใช้โดยใช้วิธีนี้
บอกชื่อเมธอดในตัวที่ใช้กันมากที่สุดโดย Python
Python ได้รับความนิยมอย่างมากในหมู่โปรแกรมเมอร์และนักพัฒนา และเครดิตส่วนใหญ่ไปที่ฟังก์ชันและวิธีการในตัวที่มีให้ ฟังก์ชันเหล่านี้ช่วยประหยัดเวลาได้มากและลดความยาวของโค้ด ทำให้ Python เป็นตัวเลือกแรกสำหรับโครงการ
ต่อไปนี้เป็นฟังก์ชันและวิธีการในตัวของ Python ที่ได้รับความนิยมและมีประโยชน์มากที่สุด:
1. bin(): ฟังก์ชันนี้ใช้จำนวนเต็มเป็นอาร์กิวเมนต์และส่งกลับสตริงไบนารี
2. dict(): ฟังก์ชันนี้ยอมรับคอลเลกชันของรายการและสร้างพจนานุกรมด้วยคู่คีย์-ค่า
3. abs(): ฟังก์ชันนี้รับตัวเลขเป็นอาร์กิวเมนต์และส่งกลับค่าสัมบูรณ์
4. ascii(): ฟังก์ชันนี้ใช้สตริงเป็นอาร์กิวเมนต์และส่งกลับในรูปแบบที่อ่านได้โดยการแทนที่อักขระที่ไม่ใช่ ASCII ด้วย x, u หรือ U Escape