[Python-es] convertir palaras con comillas a palabras sin comillas

Arnau Sanchez pyarnau en gmail.com
Lun Feb 22 16:50:33 CET 2010


On 22/02/10 16:25, punchik punchik wrote:

> mis_letras = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l"]
>
> def crea_palabra():
>      global word
>      word = " "
>      for i in range(5):
>            word = word + mis_letras[random.randint(1, 8)]
>      print word

uhmm... ¿8 != len(mis_letras)? ¿por qué pones un espacio al inicio de la 
palabra? ¿por qué usas una variable global en vez de return?

Parece más lógico:

import random

def crea_palabra(mis_letras):
     return "".join(random.choice(mis_letras) for _ in xrange(5))

mis_letras = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l"]
# ó list(string.ascii_lowercase[:12])
print crea_palabra(mis_letras)

> lo que esta funcion genera una palabra entre comillas dentro de word, por ejemplo
> ' cdgec'
> ' egigd'
 >
> Lo que neceisto tener dentro de word es palabras sin las comillas osea asi:

O te he entendido muy mal o tienes un cacao importante diferenciando una cadena 
y su representación (repr): La cadena se muestra como 'hola', pero las comillas 
sólo te informan de que eso es una cadena, las comillas no forman parte de ella. 
Si haces "print word" verás que no hay comillas por ningún lado.

http://pyspanishdoc.sourceforge.net/tut/node5.html#SECTION005120000000000000000

-- http://www.arnau-sanchez.com



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