Python อาร์เรย์ 2 มิติ: ตัวอย่างรายการสองมิติ

⚡ สรุปอย่างชาญฉลาด

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

  • 🧱 โครงสร้าง: อาร์เรย์ 2 มิติ คือ อาร์เรย์ของอาร์เรย์ โดยมีแถวและคอลัมน์
  • 🔢 การจัดทำดัชนี: เข้าถึงองค์ประกอบด้วยอาร์เรย์[แถว][คอลัมน์]; ดัชนีเริ่มต้นที่ 0
  • เพิ่มและอัปเดต: เพิ่มแถวด้วยฟังก์ชัน insert() และเปลี่ยนค่าตามดัชนี
  • 🗑️ ลบและปรับขนาด: ลบแถวด้วยคำสั่ง del และนับจำนวนแถวด้วยคำสั่ง len()
  • 🔁 การวนซ้ำ: ใช้ลูป for ซ้อนกันเพื่อวนดูแถวและคอลัมน์
  • 🧮 ตัวเลือก NumPy: สำหรับงานคำนวณตัวเลขที่ซับซ้อน ให้สร้างอาร์เรย์ 2 มิติที่แท้จริงโดยใช้ numpy.array() เพื่อเพิ่มความเร็ว

Python อาร์เรย์ 2 มิติ

อาร์เรย์สองมิติคืออะไรใน Python?

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

Python อาร์เรย์ 2 มิติ

ในภาพด้านบน เราจะเห็นว่าดัชนีระบุแต่ละองค์ประกอบอาร์เรย์โดยไม่ซ้ำกัน

วิธีสร้างอาร์เรย์ใน Python?

เราสามารถสร้างอาร์เรย์สองมิติ (รายการ) พร้อมแถวและคอลัมน์ได้

วากยสัมพันธ์:

[[r1,r2,r3,..,rn],[c1,c2,c3,.......,cn]]

ที่ไหน

r ย่อมาจากแถว และ c ย่อมาจากคอลัมน์

ตัวอย่าง: ต่อไปนี้เป็นตัวอย่างสำหรับการสร้าง

อาร์เรย์ 2 มิติ 4 แถว 5 คอลัมน์

array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]
#display
print(array)

Output:

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]

การเข้าถึงค่าต่างๆ

เราสามารถเข้าถึงค่าโดยใช้ตำแหน่งดัชนี

วากยสัมพันธ์:

เราสามารถรับค่าแถวโดยใช้ [] ผู้ประกอบการ

array[row index]

เราสามารถรับค่าคอลัมน์โดยใช้ [][]

Array[row index][column index]

ที่ไหน

  • อาร์เรย์เป็นอาร์เรย์อินพุต
  • ดัชนีแถวคือตำแหน่งดัชนีแถวเริ่มต้นจาก 0
  • ดัชนีคอลัมน์คือตำแหน่งดัชนีคอลัมน์เริ่มต้นจาก 0 ในแถว

ตัวอย่าง:

ในตัวอย่างนี้ เราจะเข้าถึงค่าโดยใช้ตำแหน่งดัชนี

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#display
print(array)

#get the first row
print(array[0])

#get the third row
print(array[2])

#get the first row third element
print(array[0][2])

#get the third row forth element
print(array[2][3])

Output:

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]
[23, 45, 43, 23, 45]
[89, 90, 87, 65, 44]
43
65

เรายังสามารถเข้าถึงองค์ประกอบโดยใช้ for loop

วากยสัมพันธ์:

for rows in the array:
  for columns in rows:
    print(columns)

ที่ไหน

  • rows ใช้เพื่อวนซ้ำทีละแถว
  • คอลัมน์ใช้เพื่อวนซ้ำค่าที่ปรากฏในแต่ละแถว

ตัวอย่าง:

Creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#use for loop to iterate the array
for rows in array:
 for columns in rows:
   print(columns,end=" ")
   print()

Output:

23 45 43 23 45
45 67 54 32 45
89 90 87 65 44
23 45 67 32 10

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

ที่นี่เราจะแทรกค่าลงในอาร์เรย์สองมิติโดยใช้ฟังก์ชัน insert()

ไวยากรณ์:

array.insert(index,[values])

ที่ไหน

  • อาร์เรย์คืออาร์เรย์อินพุต
  • ดัชนีคือตำแหน่งแถวที่จะแทรกแถวใดแถวหนึ่ง
  • value คือค่าที่จะแทรกลงในอาร์เรย์

ตัวอย่าง: แทรกค่าในอาร์เรย์

#Create 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#insert the row at 5 th position
array.insert(2, [1,2,3,4,5])

#insert the row at 6 th position
array.insert(2, [1,2,3,4,5])

#insert the row at 7 th position
array.insert(2, [1,2,3,4,5])

#display
print(array)

Output:

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]

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

ต่อไปนี้เป็นสองวิธีในการอัปเดตค่าในอาร์เรย์ 2 มิติ (รายการ)

คุณสามารถอัปเดตแถวได้โดยใช้รูปแบบต่อไปนี้

array[row_index]= [values]

คุณสามารถอัปเดตค่าคอลัมน์ภายในแถวได้โดยใช้รูปแบบต่อไปนี้

array[row_index][column_index]= [values]

ตัวอย่าง:

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#update row values in the 3rd row
array[2]=[0,3,5,6,7]

#update row values in the 5th row
array[2]=[0,3,5,6,7]

#update the first row , third column
array[0][2]=100

#update the second row , third column
array[1][2]=400

#display
print(array)

Output:

[[23, 45, 100, 23, 45], [45, 67, 400, 32, 45], [0, 3, 5, 6, 7], [23, 45, 67, 32, 10]]

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

คุณสามารถลบแถวโดยใช้ del ฟังก์ชัน

ไวยากรณ์:

del array[index]

ที่ไหน

  • อาร์เรย์คืออาร์เรย์อินพุต
  • ดัชนีหมายถึงดัชนีแถว

ตัวอย่าง:

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#delete row values in the 3rd row
del array[2]

#delete row values in the 2nd row
del array[1]

#display
print(array)

Output:

[[23, 45, 43, 23, 45], [23, 45, 67, 32, 10]]

รับขนาดของอาร์เรย์สองมิติ

คุณสามารถรับขนาดของอาร์เรย์สองมิติได้โดยใช้ฟังก์ชัน line() มันจะส่งคืนจำนวนแถวในอาร์เรย์

วากยสัมพันธ์:

len(array)

ตัวอย่าง:

รับความยาวของอาร์เรย์สองมิติ

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]
#display
print(len(array))

Output:

4

สำคัญ Python เมธอดของอาร์เรย์ (ลิสต์)

ต่อไปนี้เป็นวิธีการ Array(list) ที่สำคัญบางประการ

วิธี Descriptไอออน วากยสัมพันธ์ ตัวอย่าง
ผนวก(): วิธีการนี้จะช่วยให้เราสามารถเพิ่มองค์ประกอบที่ส่วนท้ายของอาร์เรย์ที่มีอยู่ได้ array.ผนวก(ค่า)
# Adding an element using append method to the end of an array array=[1,2,3] array.append(4) print(array)

Output:

[1,2,3,4]
ชัดเจน(): วิธีการนี้จะช่วยให้เราลบองค์ประกอบทั้งหมดที่มีอยู่ในอาร์เรย์ได้ อาร์เรย์.ชัดเจน()
# Removing all the elements from an array array=[1,2,3]
array.clear()

Output:

[]
สำเนา(): วิธีการนี้จะช่วยให้เราคัดลอกเนื้อหาของอาร์เรย์ไปยังอาร์เรย์ใหม่ array1=array.copy()
#Copying the elements from an array to a new array array=[1,2,3] array1=[]
array1=array.copy()
  print(array1)

Output:

[1,2,3]
นับ(): วิธีการนี้จะช่วยให้เรานับจำนวนครั้งที่เกิดขึ้นขององค์ประกอบที่ระบุในอาร์เรย์ array.count (องค์ประกอบ)
#Counting the no of times an element is present in an array array=[1,2,3]
print(array.count(8))
 Output: 0
ขยาย(): วิธีการนี้จะช่วยให้เราขยายอาร์เรย์เกินกว่าองค์ประกอบที่ประกอบด้วย array.ขยาย(array1)
#Extending an existing array with another array array=[1,2,3] array1=[4,5,6] array.extend(array1) print(array)
Output: [1,2,3,4,5,6]
ดัชนี(): วิธีนี้ช่วยให้เราค้นหาดัชนีขององค์ประกอบในอาร์เรย์ array.index (องค์ประกอบ)
#returing the index an element in an array array=[1,2,3]
print(array.index(3))

Output:

2
แทรก(): วิธีการนี้จะช่วยให้เราแทรกองค์ประกอบลงในอาร์เรย์ที่ดัชนีที่ระบุ array.insert (ดัชนีองค์ประกอบ)
#Inserting an element at a specified index into an array array=[1,2,3]
array.insert(2,4)
  print(array)

Output:

[1,2,4,3]
โผล่(): วิธีการนี้จะช่วยให้เราลบองค์ประกอบตามดัชนีที่ระบุ array.pop (ดัชนี)
#Removing an element at specified index through pop method
array=[1,2,3]
array.pop(2)
  print(array)

Output:

[1,2]
ลบ(): วิธีการนี้จะช่วยให้เราลบองค์ประกอบที่ตรงกันในอาร์เรย์ได้ array.remove (องค์ประกอบ)
array=[1,2,3]
array.remove(2)
  print(array)

Output:

[1,3]
Reverse- วิธีนี้จะช่วยในการย้อนกลับองค์ประกอบในอาร์เรย์ อาร์เรย์ย้อนกลับ()
array=[1,2,3,4]
array.reverse()
  print(array)

Output:

[4,3,2,1]

คำถามที่พบบ่อย

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

นำเข้าไลบรารี NumPy จากนั้นส่งลิสต์ของลิสต์ไปยังเมธอด numpy.array() ตัวอย่างเช่น np.array([[1,2],[3,4]]) อาร์เรย์ของ NumPy รองรับการคำนวณทางคณิตศาสตร์แบบรวดเร็ว การแบ่งส่วน และการปรับรูปร่างping ซึ่งการใช้ลิสต์แบบธรรมดาที่ประกอบด้วยลิสต์หลายๆ อันซ้อนกันนั้นไม่สามารถทำได้อย่างมีประสิทธิภาพ

ใช้ list comprehension เช่น [[0]*cols for _ in range(rows)] หลีกเลี่ยง [[0]*cols]*rows เพราะมันซ้ำการอ้างอิงลิสต์ภายในเดียวกัน ดังนั้นการแก้ไขแถวหนึ่งจะส่งผลต่อทุกแถวโดยไม่ตั้งใจ

ใช้ len(array) สำหรับจำนวนแถว และ len(array[0]) สำหรับจำนวนคอลัมน์ในแถวแรก ใน NumPy คุณสมบัติ shape จะส่งคืนค่าทั้งสองเป็นทูเปิล (แถว, คอลัมน์)

ลิสต์เก็บข้อมูลหลายประเภทผสมกันและกระจายอยู่ในหน่วยความจำ ส่วนอาร์เรย์ของ NumPy เก็บข้อมูลประเภทเดียวในหน่วยความจำต่อเนื่อง ใช้พื้นที่น้อยกว่า และประมวลผลการคำนวณทางคณิตศาสตร์ได้เร็วกว่ามาก เพราะประมวลผลด้วยภาษา C

ใช้ลูป for ซ้อนกัน: ลูปภายนอกจะวนซ้ำไปตามแต่ละแถว และลูปภายในจะวนซ้ำไปตามคอลัมน์ภายในแถวนั้น วิธีนี้ช่วยให้คุณสามารถอ่านหรืออัปเดตตำแหน่งของแต่ละองค์ประกอบได้ทีละตำแหน่ง

ผู้ช่วย AI สามารถสร้างโค้ดอาร์เรย์ 2 มิติ อธิบายข้อผิดพลาดของดัชนี เขียนลูปซ้อนกัน และแปลงระหว่างรายการของรายการและอาร์เรย์ NumPy ซึ่งช่วยเร่งความเร็วในการเรียนรู้และงานข้อมูลประจำวัน

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

สรุปโพสต์นี้ด้วย: