¿Cuál sería la mejor manera de conseguir una función que devuelva una palabra aleatoria en inglés (preferiblemente un sustantivo), sin mantener una lista de todas las palabras posibles en un archivo antes de la mano ?Cómo elegir una palabra aleatoria en inglés de una lista
Respuesta
Las listas de palabras no necesitan ocupar tanto espacio.
Aquí hay un JSON wordlist with over 5000 words, all nouns. Registra en menos de 50 K, el tamaño de una imagen jpeg de tamaño mediano.
Dejaré de elegir uno al azar como ejercicio para el lector.
Esta es realmente la mejor opción. Podría mantener fácilmente toda la lista en la memoria y tendrá un control total sobre la fuente, sin cambios inesperados, sin problemas de conexión, sin problemas de seguridad y, en general, debería ser mucho más fácil de implementar. – Whatsit
Y ni siquiera necesita mantener todo en la memoria. – Triptych
Bueno, usted tiene tres opciones:
- difícil que el código de la lista de palabras e inicializar una matriz con él.
- Obtenga la lista de una ubicación de Internet en lugar de un archivo.
- Mantenga una lista de posibles palabras en un archivo.
La única manera de evitar lo anterior es si no le preocupa si la palabra es real: solo puede generar series de caracteres de longitud aleatoria. (No hay forma de generar palabras mediante programación sin una lista de diccionario desde).
No puede. No hay algoritmo para generar palabras significativas. Solo puedes generar palabras que suenan como inglés, pero no tendrán ningún significado.
Mientras que hobaratically trice, todavía puede grat a fin. – dkamins
Usted podría tener la función a tratar de analizar un recurso en línea, tales como:
Corrija el enlace roto – Diederik
Otro enfoque teórico: puede raspar la página random wikipedia article y devolver la palabra N-ésima del artículo.
Es una buena idea, pero es posible que deba filtrar las fechas y los números y las palabras que no son Engilsh. – Ben
Los resultados no serían muy aleatorios, tendería a obtener muchas veces las mismas palabras y todo tipo de otros problemas. – Whatsit
@Whatsit Supongo que tienes razón. Por otro lado, ¿qué significa des random word en inglés? Si le preguntas a alguien por una palabra al azar, será una distribución estadística similar – splattne
Hay un generador de palabras aleatorio here - no es inglés pero es inglés-ish, es decir, las palabras son lo suficientemente similares al lenguaje que un usuario puede leer las palabras y almacenarlas en la memoria a corto plazo.
El código fuente está en C# y un poco kludged, pero podría usar un enfoque similar en Python para generar muchas palabras sin tener que almacenar una lista masiva.
Como alternativa, puede llamar directamente al servicio web en la página de demostración, pero alojado en GoDaddy, ¡no hay garantías de que funcione en producción!
Puede descargar las "palabras comunes a SOWPODS y TWL" listas de http://www.math.toronto.edu/jjchew/scrabble/lists/. Puse todas las palabras en esos archivos juntos y la lista pesaba aproximadamente 642k. No es enorme de ninguna manera. Sin embargo, las listas contienen un montón de palabras oscuras, ya que están destinadas para el uso de Scrabble en torneos. Lo bueno es que las listas forman un subconjunto sustancial del idioma inglés.
Simplemente use la palabra aleatoria de setgetgo api. Es gratis, es fácil y es genial.
Responde devolver palabras reales, pero y devolver palabras no reales –
- 1. Escogiendo una palabra aleatoria en Python?
- 2. Contando palabras en inglés en una cadena aleatoria
- 3. ¿Cómo comprobar si una palabra es una palabra en inglés con Python?
- 4. Encontrar la definición en inglés de una palabra en VBA
- 5. Ruso-Inglés Palabra paralela Corpus?
- 6. ¿Dónde puedo encontrar una lista de frases en inglés?
- 7. ¿Cómo creo una ruta aleatoria?
- 8. ¿Hay una lista común de "mala palabra"?
- 9. Selección aleatoria de un elemento de una lista ponderada
- 10. sintaxis para llamar a la función aleatoria de una lista
- 11. ¿Cómo generar una fecha aleatoria en Ruby?
- 12. Generando una cadena aleatoria
- 13. Crear lista aleatoria de enteros en Python
- 14. iteración aleatoria en Python
- 15. fetch sinónimo de una palabra
- 16. generación aleatoria en la lista FSharp
- 17. ¿Cómo dividir una cadena en una lista?
- 18. Cómo implementar una mezcla repetitiva que es aleatoria, pero no demasiado aleatoria
- 19. ¿Dónde obtener una lista de casi todas las palabras en inglés?
- 20. ¿Cómo generar una imagen completamente aleatoria?
- 21. Cómo encontrar una palabra completa en una cadena en java
- 22. Cadena aleatoria de la lista de matriz de cadenas
- 23. Enumeración aleatoria de una tabla hash en OCaml
- 24. Lista de palabras "Detener palabras" para inglés?
- 25. Linux: busque una palabra en particular en una lista de archivos bajo un directorio
- 26. Algoritmo de lista de reproducción aleatoria
- 27. ¿Hay una función en python para dividir una palabra en una lista?
- 28. Generar una permutación aleatoria uniforme
- 29. ¿Cómo leo una línea aleatoria de un archivo en Python?
- 30. ¿Cómo contar el número de letras en una cadena aleatoria?
Esta no es una pregunta sensata. ¿Podría proporcionar algún contexto adicional o pista sobre lo que está tratando de hacer? Generar palabras en inglés sin un diccionario de inglés es una contradicción lógica. Por favor aclara esto. –
buscando una palabra de cualquier recurso en línea diseñado para proporcionar palabras aleatorias parece una buena idea.:-) –
@joshhunt: ¿Qué constituye "masivo"? Los diccionarios Spellcheck para inglés cuestan unos 400K. Ver http://aspell.net/ para uno bueno. –