Foros del Web » Programando para Internet » Python »

[SOLUCIONADO] Alcance de una variable de instancia en Python

Estas en el tema de Alcance de una variable de instancia en Python en el foro de Python en Foros del Web. Hola amigos, antes que nada decirles que soy nuevo en Python y pues no se si sea un error de novato, lo que pasa es ...
  #1 (permalink)  
Antiguo 03/03/2015, 21:45
Avatar de CarMoreno  
Fecha de Ingreso: marzo-2015
Ubicación: Valle del Cauca
Mensajes: 5
Antigüedad: 6 años, 10 meses
Puntos: 0
Pregunta Alcance de una variable de instancia en Python

Hola amigos, antes que nada decirles que soy nuevo en Python y pues no se si sea un error de novato, lo que pasa es que he definido un arreglo llamado FO y este no se me actualiza conforme yo hago operaciones en distintas partes de mi programa, Hago operaciones con el, pero cuando lo llamo luego, estas peraciones no se ven reflejadas, la verdad no se en que estoy mal, pues también he creado un arreglo llamado números, y este si lo puedo usar en cualquier parte de mi código tan solo haciendo self.numeros, no sé en que estoy fallando, he perdido bastante tiempo y espero me puedan ayudar, de ante mano muchísimas gracias, acá mi código:

Código Python:
Ver original
  1. def __init__(self, parent = None):
  2.         self.numeros = [] #Definimos un array donde se guardaran los aleatorios generados
  3.         self.FO = [] #ESTA VARIABLE NO FUNCIONA BIEN
  4. def frecuenciasObtenidas(self):
  5.         contador1 = 0
  6.         contador2 = 0
  7.         contador3 = 0
  8.         contador4 = 0
  9.         contador5 = 0
  10.         contador6 = 0
  11.         contador7 = 0
  12.         contador8 = 0
  13.         contador9 = 0
  14.         contador10 = 0
  15.  
  16.         for i in self.numeros: #SI ME RECONOCE LA VARIABLE numeros
  17.             i = i/10000.0 #Esto es para que caigan en el rango estipulado
  18.             if i >= 0 and i < 0.1:
  19.                 contador1 += 1
  20.             if i >= 0.1 and i < 0.2:
  21.                 contador2 += 1
  22.             if i >= 0.2 and i < 0.3:
  23.                 contador3 += 1
  24.             if i >= 0.3 and i < 0.4:
  25.                 contador4 += 1
  26.             if i >= 0.4 and i < 0.5:
  27.                 contador5 += 1
  28.             if i >= 0.5 and i < 0.6:
  29.                 contador6 += 1
  30.             if i >= 0.6 and i < 0.7:
  31.                 contador7 += 1
  32.             if i >= 0.7 and i < 0.8:
  33.                 contador8 += 1
  34.             if i >= 0.8 and i < 0.9:
  35.                 contador9 += 1
  36.             if i >= 0.9 and i < 1:
  37.                 contador10 += 1
  38.        
  39.         self.FO.append(contador1)#LLENO FO con valores
  40.         self.FO.append(contador2)
  41.         self.FO.append(contador3)
  42.         self.FO.append(contador4)
  43.         self.FO.append(contador5)
  44.         self.FO.append(contador6)
  45.         self.FO.append(contador7)
  46.         self.FO.append(contador8)
  47.         self.FO.append(contador9)
  48.         self.FO.append(contador10)
  49.         print "VECTOR DE FRECUENCIAS", self.FO #
  50.                                        
  51.     # -------------------------------------Pruebas de uniformidad-------------------------------------
  52.     def chiCuadrado(self):
  53.         FE = [100, 100, 100, 100, 100, 100, 100, 100, 100, 100]
  54.         for i in FE:
  55.             i = str(i)
  56.             for j in xrange(0, 11):
  57.                 self.ui.tablaUniformidad.setItem(j, 2, QtGui.QTableWidgetItem(i))
  58.        
  59.         print "soy el vector de frecuencias obtenidas", self.FO #NO SE POR QUE ME RETORNA VACIO, SI YA LO LLENE


cuando imprimo self.FO me retorna vacio, no deberia de ser asi, puesto que ya le he insertado datos.
  #2 (permalink)  
Antiguo 04/03/2015, 07:25
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Alcance de una variable de instancia en Python

¿cómo estás llamando a este código?

Etiquetas: python3
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:34.