Extrair apenas os números de dados em Jython
Pergunta
Aqui está o meu problema. Eu estou trabalhando em um programa Jython e eu tenho que números extrato de uma PyJavaInstance:
[{string1 = "foo", xxx1, XXX2, ..., xxxN, string2 = "bar"}]
(onde XXX são os números de ponto flutuante).
A minha pergunta é como eu posso extrair os números e colocá-los em uma estrutura mais simples como uma lista python.
Agradecemos antecipadamente.
Solução
A PyJavaInstance
é um invólucro em torno Jython uma instância de Java; como extrair números de que depende o que é. Se você precisa para obter um monte de coisas - alguns dos quais são strings e alguns dos quais são carros alegóricos, então:
float_list = []
for item in instance_properties:
try:
float_list.append(float(item))
except ValueError:
pass
Outras dicas
pode você iterate e verificação se um item é flutuante? O método que você está procurando isinstance
. Espero que seja implementado em Jython.
Obrigado Vinay. É também o tipo de solução que eu encontrei apenas:
new_inst=[]
for element in instance:
try:
float(element)
new_inst.append(float(element))
except ValueError:
del(element)
@SilentGhost: Boa sugestão. A questão era encontrar o método poderia determinar se cada elemento I iterate é um número float.