python - python单链表不能正常工作
问题描述
add 方法()只打印两个值,我想打印我添加的所有数字。size 效果很好,但我不知道为什么当我想打印所有值时 value 不起作用
enter code here
class Node():
def __init__(self,value):
self.next =None
self.val =value
class single_linked_list():
def __init__(self):
self.head =None
self.size =0
def add(self,val):
node =Node(val)
if self.head is None:
self.head =node
self.size +=1
else:
self.head.next =node
self.size +=1
def __str__(self):
vals =[]
node =self.head
while node is not None:
vals.append(node.val)
node =node.next
return f"[{','.join(str(val)for val in vals)}]"
sl=single_linked_list()
sl.add(3)
sl.add(5)
sl.add(50)
sl.add(9)
print(sl)
print(sl.size)
# it just show these value :[3,9]
#4 as size fine
解决方案
class Node():
def __init__(self,value):
self.next =None
self.val =value
class single_linked_list():
def __init__(self):
self.head =None
self.size =0
def add(self,val):
node =Node(val)
if self.head is None:
self.head =node
self.size +=1
else:
self.head.next =node
self.size +=1
推荐阅读
- android - 什么是 Facebook 开发人员哈希密钥,为什么需要它?
- java - 从 Retrofit 请求中获取数据时如何在 listView 中设置数据?
- java - Gradle:如何将 kotlin 和 java 保存在同一个源文件夹中?
- c# - 如何使用 Selenium 获取包含“”的跨度文本
- c++ - 为什么我在 C++ 中收到“'initializing': cannot convert from 'initializer list' to '_Objty'”错误?
- python - Selenium 无法获取页面的所有元素
- r - Cut elements from the beginning and end of an R vector
- python - IS there a CSV Quotechar function as in Python suitable for Bulk Insert into MS SQL Server?
- reactjs - 更新反应表单输入字段中的值
- php - 无法使用学说更新我的 Symfony 应用程序依赖项