asignar id

Arnau Sanchez pyarnau en gmail.com
Jue Sep 11 13:07:07 CEST 2008


Antonio Reyes escribió:

> 'adversity' [0] para el primer sentido,  'adversity' [1] para el segundo, y
> si fuera el caso que tuviera 10 sentidos, 'adversity' [9]

Estás pasando por alto que lo que te devuelve getSenses() es ya una tupla, así 
que puedes hacer lo que pides sin mayores problemas:

In [32]:adversity = N['adversity'].getSenses()

In [33]:type(adversity)
Out[33]:<type 'tuple'>

In [34]:adversity[0]
Out[34]:'adversity' in {noun: adversity, hardship, hard knocks}

In [35]:adversity[1]
Out[36]:'adversity' in {noun: adversity}

In [36]:len(adversity)
Out[36]:2

> Esto lo necesito porque quiero explotar otra función de pywordnet que es la
> de MEET en donde se extrae el nodo más próximo que une 2 sentidos de una
> palabra, en caso de que lo haya.
> 
> meet(adversity[0], adversity[1])

En mis pruebas cuando haces un meet de dos elementos que no concuerdan en nada 
salta una excepción "KeyError: '~i'". Sí, en cambio, guardan alguna relación:

In [89]:gs = lambda name: N[name].getSenses()

In [90]:meet(gs("goose")[0], gs("lion")[0])
Out[90]:{noun: vertebrate, craniate}

parece ir bien.
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es