Python - อาร์เรย์ 2D

อาร์เรย์สองมิติคืออาร์เรย์ภายในอาร์เรย์ มันคืออาร์เรย์ของอาร์เรย์ ในอาร์เรย์ประเภทนี้ตำแหน่งขององค์ประกอบข้อมูลถูกอ้างถึงโดยดัชนีสองตัวแทนที่จะเป็นดัชนีเดียว ดังนั้นจึงแทนตารางที่มีแถวเป็น dcolumns ของข้อมูล ในตัวอย่างด้านล่างของอาร์เรย์สองมิติผู้สังเกตว่าแต่ละองค์ประกอบอาร์เรย์เองก็เป็นอาร์เรย์เช่นกัน

ลองพิจารณาตัวอย่างการบันทึกอุณหภูมิ 4 ครั้งต่อวันทุกวัน บางครั้งเครื่องมือบันทึกอาจผิดพลาดและเราไม่สามารถบันทึกข้อมูลได้ ข้อมูลดังกล่าวเป็นเวลา 4 วันสามารถนำเสนอเป็นอาร์เรย์สองมิติดังต่อไปนี้

Day 1 - 11 12 5 2 
Day 2 - 15 6 10 
Day 3 - 10 8 12 5 
Day 4 - 12 15 8 6

ข้อมูลข้างต้นสามารถแสดงเป็นอาร์เรย์สองมิติได้ดังต่อไปนี้

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]

การเข้าถึงค่าในอาร์เรย์สองมิติ

องค์ประกอบข้อมูลในอาร์เรย์สอง dimesnional สามารถเข้าถึงได้โดยใช้ดัชนีสองตัว ดัชนีหนึ่งที่อ้างถึงอาร์เรย์หลักหรือพาเรนต์และดัชนีอื่นที่อ้างถึงตำแหน่งขององค์ประกอบข้อมูลในอาร์เรย์ภายใน หากเรากล่าวถึงดัชนีเพียงตัวเดียวอาร์เรย์ภายในทั้งหมดจะถูกพิมพ์สำหรับตำแหน่งดัชนีนั้น ตัวอย่างด้านล่างแสดงให้เห็นถึงวิธีการทำงาน

from array import *

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]

print(T[0])

print(T[1][2])

เมื่อดำเนินการโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -

[11, 12, 5, 2]
10

ในการพิมพ์อาร์เรย์สองมิติทั้งหมดเราสามารถใช้ python สำหรับลูปดังที่แสดงด้านล่าง เราใช้ end of line เพื่อพิมพ์ค่าในแถวต่างๆ

from array import *

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
for r in T:
    for c in r:
        print(c,end = " ")
    print()

เมื่อดำเนินการโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -

11 12 5 2 
15 6 10 
10 8 12 5 
12 15 8 6

การแทรกค่าในอาร์เรย์สองมิติ

เราสามารถแทรกองค์ประกอบข้อมูลใหม่ที่ตำแหน่งเฉพาะโดยใช้เมธอด insert () และระบุดัชนี

ในตัวอย่างด้านล่างนี้มีการแทรกองค์ประกอบข้อมูลใหม่ที่ตำแหน่งดัชนี 2

from array import *
T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]

T.insert(2, [0,5,11,13,6])

for r in T:
    for c in r:
        print(c,end = " ")
    print()

เมื่อดำเนินการโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -

11 12 5 2 
15 6 10 
0 5 11 13 6 
10 8 12 5 
12 15 8 6

การอัปเดตค่าในอาร์เรย์สองมิติ

เราสามารถอัปเดตอาร์เรย์ภายในทั้งหมดหรือองค์ประกอบข้อมูลเฉพาะบางส่วนของอาร์เรย์ภายในโดยกำหนดค่าใหม่โดยใช้ดัชนีอาร์เรย์

from array import *

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]

T[2] = [11,9]
T[0][3] = 7
for r in T:
    for c in r:
        print(c,end = " ")
    print()

เมื่อดำเนินการโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -

11 12 5 7 
15 6 10 
11 9 
12 15 8 6

การลบค่าในอาร์เรย์สองมิติ

เราสามารถลบอาร์เรย์ภายในทั้งหมดหรือองค์ประกอบข้อมูลเฉพาะบางส่วนของอาร์เรย์ภายในได้โดยกำหนดค่าใหม่โดยใช้วิธี del () ด้วยดัชนี แต่ในกรณีที่คุณจำเป็นต้องลบองค์ประกอบข้อมูลเฉพาะในอาร์เรย์ภายในตัวใดตัวหนึ่งให้ใช้ขั้นตอนการอัปเดตที่อธิบายไว้ข้างต้น

from array import *
T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]

del T[3]

for r in T:
    for c in r:
        print(c,end = " ")
    print()

เมื่อดำเนินการโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -

11 12 5 2 
15 6 10 
10 8 12 5