我试图从文本文件中读取两个值:130,220
(用逗号分隔)。但是,我已经创建了一个节点的链接列表,这些节点具有dato1
和dato2
属性,我希望在这些属性中保存这些值。你知道吗
当我从reader类打印obtenerNodos
方法时,只打印第一个重复的值(130)。你知道吗
[130, 130]
如何为dato1
和dato2
编辑obtenerNodos
方法?你知道吗
我希望:[130,220]
正确地存储在链表中。你知道吗
下面是节点和链表的代码。你知道吗
节点类
class Nodo:
def __init__(self, dato1 = None, dato2 = None, siguienteNodo = None):
self.dato1 = dato1
self.dato2 = dato2
self.siguienteNodo = siguienteNodo
链表类
class ListaEnlazada:
def __init__(self):
self.nodoInicio = Nodo()
self.nodoUltimo = Nodo()
def tamano(self):
actual = self.nodoInicio
total = 0
while actual.siguienteNodo != None:
total += 1
actual = actual.siguienteNodo
return total
def agregarNodoFinal(self, dato1, dato2):
nodoNuevo = Nodo(dato1, dato2)
actual = self.nodoInicio
while actual.siguienteNodo is not None:
actual = actual.siguienteNodo
actual.siguienteNodo = nodoNuevo
def obtenerNodos(self):
datos = []
nodo = self.nodoInicio
while nodo.siguienteNodo is not None:
nodo = nodo.siguienteNodo
datos.append(nodo.dato1)
return datos
def vacia(self):
if self.nodoInicio == None:
return True
else:
return False
读卡器类(我不确定我的读卡器是否工作正常)
class LecturaArchivo:
listaEnlazada = ListaEnlazada()
nombreArchivo = input('Nombre del archivo: ')
archivo = open(nombreArchivo, "r")
lineas = archivo.read()
datos = lineas.split(',')
for dato in datos:
xTemporal = float(datos[0])
yTemporal = float(datos[1])
listaEnlazada.agregarNodoFinal((xTemporal), (yTemporal))
print(listaEnlazada.obtenerNodos())
目前没有回答
相关问题 更多 >
编程相关推荐