- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试做一个基于链表和节点的 N 叉树。但是每当我尝试向树添加新值时,我都会得到:
NameError:未定义名称“self”
我使用模块,所以我必须从其他文件导入类。
我在 def addTree(self, value, parent = self.root): Tree 代码中得到了这个错误
树代码
from Resources.LinkedList import *
class Tree:
def __init__(self):
self.root = LinkedList()
def addTree(self, value, parent = self.root):
parent.addLinkedList(value)
节点代码
from Resources.LinkedList import *
class Node:
def __init__(self,name):
self.name = name
self.children = LinkedList()
self.next = None
链表代码
from Resources.Node import *
from Resources.Compare import *
class LinkedList:
def __init__(self):
self.first = None
def addLinkedList(self,value):
if (not self.first):
self.first = Node(value)
else:
compare = Compare()
if(compare.compare(self.first,value)>0):
stack = self.first
self.first = Node(value)
self.first.next = stack
return True
else:
previous = self.first
current = self.first.next
while(current):
if (compare.compare(current,value)<0):
previous = current
current = current.next
return True
elif (compare.compare(current,value)>0):
stack = current
previous.next = Node(value)
previous.next.next = stack
return True
else:
previous.next = Node(value)
previous.next.next = current.next
return True
previous.next = Node(value)
return True
也感谢您的帮助,我是 Python 的新手,我不知道自己做错了什么。
最佳答案
问题是“self”只在方法中定义,不能在参数中使用,在这些情况下的技巧是使用 None 作为参数并进行验证:
def addTree(self, value, parent = None):
if parent is None:
parent = self.root
parent.addLinkedList(value)
关于python - 名称错误 : name "AnyName" is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57485751/
我正在尝试做一个基于链表和节点的 N 叉树。但是每当我尝试向树添加新值时,我都会得到: NameError:未定义名称“self” 我使用模块,所以我必须从其他文件导入类。 我在 def addTre
步骤:在 chrome 的控制台中输入: [].anyName 这很好用。但是当我们输入 {}.anyName 它给出了错误。 最佳答案 因为没有上下文的 {} - 即在赋值中或作为函数的参数,只是一
努力做到简单example在 Windows 通用项目中使用主细节。但是 VS 显示错误:DataType "Any Name"is not supported in a Windows Univer
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 6 年前。 Improve
完整代码块: var create = { man: function(height) { // What is this line called? return "Gener
忙于构建website当用户做出几次选择后,就会绘制图表。我正在使用 javascript 替换 div 的内部 HTML 来完成不同的步骤,更具体地说,如下所示: document.getEleme
我是一名优秀的程序员,十分优秀!