Pregunta

Este es mi problema. Estoy trabajando en un programa de Jython y tengo que extraer los números de un PyJavaInstance:

[{cadena1 = "foo", xxx1 "barra", xxx2, ..., xxxN, cadena2 =}]

(donde xxx son los números de coma flotante).

Mi pregunta es ¿cómo puedo extraer los números y ponerlos en una estructura más simple como una lista de Python.

Gracias de antemano.

¿Fue útil?

Solución

A PyJavaInstance es una envoltura Jython alrededor de una instancia de Java; cómo se extrae números de ella depende de lo que es. Si usted necesita para obtener un montón de cosas - algunos de los cuales son cadenas y algunos de los cuales son los flotadores, a continuación:

float_list = []
for item in instance_properties:
    try:
        float_list.append(float(item))
    except ValueError:
        pass

Otros consejos

se puede repetir y comprobar si un elemento es flotar? El método que está buscando es isinstance . Espero que sea implementado en Jython.

Gracias Vinay. Es también el tipo de solución que acabo de descubrir:

 new_inst=[]
for element in instance:
    try:
        float(element)
        new_inst.append(float(element))
    except ValueError:
        del(element)

@SilentGhost: Buena sugerencia. La cuestión era encontrar qué método podría determinar si cada elemento que iterar es un número flotante.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top