[英]Local variable referenced before Python
我有以下代碼:
def popLast(aLinkedList):
ptr = aLinkedList
while ptr != None:
if ptr['next']['next'] == None and ptr['next'] != None:
del_node = ptr['data']
ptr['next'] = ptr['next']['next']
ptr = ptr['next']
return (del_node,ptr)
當我放
myLinkedList = createList(['a', 'b', 0, [1, 2]])
for i in range(getLength(myLinkedList)):
(a, myLinkedList) = popLast(myLinkedList)
print(a, end = ", new list: ")
printList(myLinkedList)
它一直給我
UnboundLocalError:分配前已引用局部變量“ del_node”
當我只使用popLast(myLinkedList)
,沒有問題。 一切正常。 我不知道是否是因為返回的元組是問題。
如果傳入一個空列表,則永遠不會初始化del_node。 這是導致錯誤的原因。 要更改此設置,請首先將del_node初始化為None:
def popLast(aLinkedList):
ptr = aLinkedList
del_node = None
while ptr is not None:
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.