วิธีแก้ไขใน python: วัตถุ 'numpy.ndarray' ไม่สามารถเรียกได้


ข้อผิดพลาดทั่วไปที่คุณอาจพบเมื่อใช้ NumPy ใน Python คือ:

 TypeError : 'numpy.ndarray' object is not callable

ข้อผิดพลาดนี้มักเกิดขึ้นเมื่อพยายามเรียกอาร์เรย์ NumPy เป็นฟังก์ชันโดยใช้วงเล็บกลม () แทนวงเล็บเหลี่ยม [ ]

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

วิธีการทำซ้ำข้อผิดพลาด

สมมติว่าเรามีอาร์เรย์ NumPy ดังต่อไปนี้:

 import numpy as np

#create NumPy array
x = np. array ([2, 4, 4, 5, 9, 12, 14, 17, 18, 20, 22, 25])

ตอนนี้ สมมติว่าเราพยายามเข้าถึงองค์ประกอบแรกของอาร์เรย์:

 #attempt to access the first element in the array
x(0)

TypeError : 'numpy.ndarray' object is not callable

เนื่องจากเราใช้วงเล็บกลม () Python จึงคิดว่าเรากำลังพยายามเรียกอาร์เรย์ NumPy x เป็นฟังก์ชัน

เนื่องจาก x ไม่ใช่ฟังก์ชัน เราจึงได้รับข้อผิดพลาด

วิธีการแก้ไขข้อผิดพลาด

วิธีแก้ไขข้อผิดพลาดนี้คือเพียงใช้วงเล็บเหลี่ยม [ ] เมื่อเข้าถึงองค์ประกอบอาร์เรย์ NumPy แทนวงเล็บเหลี่ยม () :

 #access the first element in the array
x[0]

2

องค์ประกอบแรกของอาร์เรย์ (2) จะปรากฏขึ้นและเราไม่ได้รับข้อผิดพลาดใดๆ เนื่องจากเราใช้วงเล็บเหลี่ยม [ ]

โปรดทราบว่าเราสามารถเข้าถึงองค์ประกอบอาร์เรย์หลายรายการพร้อมกันได้ตราบใดที่เราใช้วงเล็บเหลี่ยม [ ] :

 #find sum of first three elements in array
x[0] + x[1] + x[2]

10

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีแก้ไขข้อผิดพลาดทั่วไปอื่นๆ ใน Python:

วิธีแก้ไข: ValueError: ดัชนีมีรายการที่ซ้ำกัน ไม่สามารถเปลี่ยนรูปร่างได้
วิธีแก้ไข: ข้อผิดพลาดประเภท: สตริงที่คาดหวังหรือวัตถุไบต์
วิธีแก้ไข: TypeError: ไม่สามารถเรียกวัตถุ ‘numpy.float64’ ได้

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *