Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

รับอินพุทเมทริกซ์จากผู้ใช้ใน Python

ในบทช่วยสอนนี้ เราจะเรียนรู้วิธีรับอินพุทเมทริกซ์ใน Python จากผู้ใช้ มีสองวิธีหลัก ลองดูทั้งสองวิธี

วิธีที่ 1: รับทีละตัวเลข

รับตัวเลขของเมทริกซ์ทีละตัวจากผู้ใช้ ดูโค้ดด้านล่าง

ตัวอย่าง

# เริ่มต้นเมทริกซ์ว่าง
matrix = []
# รับเมทริกซ์ 2x2 จากผู้ใช้
for i in range(2):
    # แถวว่าง
    row = []
    for j in range(2):
        # ขอให้ผู้ใช้ป้อนตัวเลข
        # แปลงเป็น int เพราะค่าเริ่มต้นเป็น string
        element = int(input())
        # เพิ่มสมาชิกเข้า 'row'
        row.append(element)
    # เพิ่ม 'row' เข้า 'matrix'
    matrix.append(row)
# พิมพ์เมทริกซ์
print(matrix)

ผลลัพธ์

การรันโค้ดข้างต้นจะได้ผลลัพธ์ดังนี้

1
2
3
4
[[1, 2], [3, 4]]

วิธีที่ 2: รับทีละแถว (Space-separated)

รับอินพุททีละแถว โดยคั่นด้วยช่องว่าง แล้วแปลงแต่ละตัวด้วย map และ int ดูโค้ด

ตัวอย่าง

# เริ่มต้นเมทริกซ์ว่าง
matrix = []
# รับเมทริกซ์ 2x2 จากผู้ใช้
for i in range(2):
    # รับอินพุทแถวจากผู้ใช้
    row = list(map(int, input().split()))
    # เพิ่ม 'row' เข้า 'matrix'
    matrix.append(row)
# พิมพ์เมทริกซ์
print(matrix)

ผลลัพธ์

การรันโค้ดข้างต้นจะได้ผลลัพธ์ดังนี้

1 2
3 4
[[1, 2], [3, 4]]

สรุป

วิธีที่ 2 สะดวกกว่า ใช้ input().split() ร่วมกับ map(int, ...) หากมีข้อสงสัย กรุณาแจ้งในส่วนความคิดเห็น