所以我最近一直在使用列表,并且试图使一个特殊的类工作,所以我写了一个for循环来测试基本功能,但这只是给了我这种追溯:
Traceback (most recent call last):
File "C:\Users\User\Desktop\nice code\v2.py", line 13, in <module>
if Lenlist == len.lenList(len.listLen(List=len.list(list=List().list()))): print(Lenlist);
File "C:\Users\User\Desktop\nice code\v2.py", line 3, in lenList
def lenList(self, list=list): return len(list);
TypeError: 'List' object is not callable
以下是您的来源:
class List:
List = list('list');
def lenList(self, list=list): return len(list);
def listLen(self, List=len): return list(List);
def lenlist(self, len=list): return self.lenList(list=len);
def list(self, list=list): return self.List;
def listlen(self, len=len): return self.list(list=len);
len = List();
Lenlist = 0;
for Len in len.listLen(List=len.list(list=List().list())):
if Len in list(len.listLen(List=len.list(list=Len))):
Lenlist += list(len.listLen(List=len.list(list=Len))).count(Len);
if Lenlist == len.lenList(len.listLen(List=len.list(list=List().list()))): print(Lenlist);
我期望的是打印出List.List的长度。我已经尝试用关键字替换所有位置参数。
答案 0 :(得分:0)
这里有一些重要的注意事项,您需要遵循
始终尽量避免覆盖python关键字或预定义函数(例如len)
在类中没有与类名同名的变量名
我看到的第一个问题是您已经将lenList中的len覆盖了;您将无法获得所需的输出 我在您的代码中发现的第二个问题是lenList函数试图返回len(list) list是一个python预定义的类,因此len找不到任何东西
我对您的代码做了一些更改,现在可以显示4
class List:
List1 = list('list');
def lenList(self, list=list): return len(self.List1);
def listLen(self, List=len): return list(self.List1);
def lenlist(self, len=list): return self.lenList(list=len);
def list(self, list=list): return self.List1;
def listlen(self, len=len): return self.list(list=len);
len1 = List();
Lenlist = 0;
for Len in len1.listLen(List=len1.list(list=List().list())):
if Len in list(len1.listLen(List=len1.list(list=Len))):
Lenlist += list(len1.listLen(List=len1.list(list=Len))).count(Len);
if Lenlist == len1.lenList(len1.listLen(List=len1.list(list=List().list()))): print(Lenlist);