elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Ejercicios
| | | |-+  Ejercicio en python
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ejercicio en python  (Leído 369 veces)
Agustin_y2k

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Ejercicio en python
« en: 20 Marzo 2019, 19:43 »

Buenas, en mi facultad migraron todo el programa de C a python y soy novato en el lenguaje... Ya estamos en Clase y diseñé una lista para la clase que funciona bien, pero me gustaria saber como se puede hacer para agrandar la lista... Paso el código

Código
  1. #lista de clases
  2.  
  3. class Persona():
  4. __nombre=""#los guiones son para que sea un atributo privado
  5. __apellido=""
  6. def saludar(self):
  7. print("Hola " + self.__nombre + " " + self.__apellido)
  8. def setNombre(self,nom):
  9. self.__nombre=nom
  10. def setApellido(self,ape):
  11. self.__apellido=ape
  12. def getNombre(self):
  13. return self.__nombre
  14. def getApellido(self):
  15. return self.__apellido
  16.  
  17. print ("Tamanio de la lista: ")
  18. n=int(input())
  19. print("\n")
  20.  
  21. lista=[None]*n
  22.  
  23. for x in range(n):
  24. lista[x]=Persona()
  25. print("Ingrese Nombre:")
  26. lista[x].setNombre(input())
  27. print("Ingrese Apellido:")
  28. lista[x].setApellido(input())
  29. print("\n")
  30.  
  31. print("Quiere agrandar la lista?: s/n")
  32. op=input()
  33.  
  34. if op=="s" or op=="S":
  35. print ("cantidad a agregar: ")
  36. n2=int(input())
  37. aux=n+n2
  38. for x in range(n2):
  39. lista.append(None)
  40. lista[x]=Persona()
  41. print("Ingrese Nombre:")
  42. lista[x].setNombre(input())
  43. print("Ingrese Apellido:")
  44. lista[x].setApellido(input())
  45. print("\n")
  46.  
  47. for x in range(aux):
  48. print("\nEn la posicion %d:" % x)
  49. print(lista[x].getNombre())
  50. print(lista[x].getApellido())
  51. #Me sobre escribe los datos de la lista, se que con append
  52. #se escriben al final pero si pruebo de otra manera luego me dice 'list index out of range'
  53. else:
  54. for x in range(n):
  55. print("\nEn la posicion %d:" % x)
  56. print(lista[x].getNombre())
  57. print(lista[x].getApellido())
  58.  

MOD: Etiqueta GeSHi.


« Última modificación: 20 Marzo 2019, 19:51 por MCKSys Argentina » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Python] Ejercicio dificil :(
Scripting
edutero15 7 6,662 Último mensaje 29 Abril 2011, 21:58
por edutero15
Ejercicio de python
Ejercicios
Folazo 2 2,963 Último mensaje 25 Enero 2012, 14:52
por criskapunk
ejercicio con python
Scripting
pazjuan66 1 2,643 Último mensaje 28 Octubre 2013, 22:12
por tincopasan
Ejercicio de python
Scripting
MaarLopez 1 1,771 Último mensaje 4 Septiembre 2016, 05:51
por tincopasan
ejercicio de python
Scripting
koala99 9 1,465 Último mensaje 14 Marzo 2019, 02:36
por WHK
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines