Python 数组类实现:修复双下划线错误
在 Python 中实现数组类时,一个常见的错误是初始化方法 ___init__() 中的双下划线使用错误,应该是两个,即 __init__()。类似的错误也会出现在 __setitem__() 和 __getitem__() 方法中。
错误代码:
class Array:
def ___init__(self,n):
self._size = n
self._data = [0] * n
def __len__(self):
return self._size
def __setitem__(self,i,val):
self._data[i] =val
def __getitem__(self,i):
return self._data[i]
arr=Array(5)
arr[4] = 10
print(arr[4])
for i in arr:
print(i)
修正后的代码:
class Array:
def __init__(self,n):
self._size = n
self._data = [0] * n
def __len__(self):
return self._size
def __setitem__(self,i,val):
self._data[i] = val
def __getitem__(self,i):
return self._data[i]
arr=Array(5)
arr[4] = 10
print(arr[4])
for i in arr:
print(i)
通过修正双下划线的错误,代码能够正常实现数组类的功能,并可以方便地使用 __getitem__() 和 __setitem__() 方法访问和修改数组元素。
原文地址: https://www.cveoy.top/t/topic/KtQ 著作权归作者所有。请勿转载和采集!