elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


Tema destacado: Estamos en la red social de Mastodon


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ... 235
61  Programación / Programación General / Re: Ayuda con las funciones de string de AS 1.0. en: 18 Diciembre 2024, 14:20 pm
Citar
Según veo, es un array, de hecho la descripción dice que genera uno, ok. ¿Y lo puedo convertir en una cadena usando .join? Veo que no, por lo que dijo EdePC. ¿Entonces en este caso deberé usar un while?

El problema es de split("") en Flah5, join("") no tiene problemas, esto funciona perfectamente:

Código
  1. Fija = "12345";
  2.  
  3. Candidato = Random(5) + 1;
  4.  
  5. trace ("Probando el Candidato " + Candidato);
  6. NuevaFija = Fija.split(Candidato);
  7. trace ("NuevaFija: " + NuevaFija);
  8.  
  9. NuevaFija = Fija.split(Candidato).join("");
  10. trace ("NuevaFija: " + NuevaFija);
62  Informática / Software / Re: Dudas sobre John the Ripper. en: 7 Diciembre 2024, 18:55 pm
Código
  1. john --wordlist=Mywords.txt rar.hashes

Supongo, debes entender como funcionan los programas por línea de comandos:

programa parámetro_1 parámetro_2 parámetro_3 etc

En caso de john los parámetros en sí pueden tener subparámetros (valor), entre cada parámetro hay un espacio en blanco como separador:

programa parámtro_1=valor_1 parámetro_2
63  Programación / Programación General / Re: Ayuda con las funciones de string de AS 1.0. en: 5 Diciembre 2024, 15:35 pm
Citar
Se tiene una urna con 2 bolas blancas y una negra. 3 personas van sacando por turnos hasta que saquen la negra. Esa persona pierde. Yo quería ver si sacar 1ero da ventaja, desventaja, o si está favorecido el 2ndo, etc.

Por probabilidad no debería haber diferencia, pero por estadística puede variar algo dependiendo, por ejemplo hay personas que prefieren o inconscientemente eligen la bola de al fondo, centro, derecho, izquierdo, etc pero eso ya es otra otra cosa

Citar
La función se repite y los resultados se muestran en pantalla. Lo de Parte1 y Parte2 se lo copié a GPT pero no funciona bien.

No funciona bien porque el viejo substring trabaja con el número de caracter (el primer caracter tendrá el número 1), no con el índice el caracter (el primer caracter tendrá el índice 0)

Lo correcto sería:

Código
  1. BaseUrna = "WWB";
  2. AlexPerdidas = 0;
  3. BartPerdidas = 0;
  4. CamiloPerdidas = 0;
  5. function Sortear () {
  6. // Preparar urna:
  7. Urna = BaseUrna;
  8. // Elección de la 1er persona, Alex:
  9. BolaDeAlexNro = random(3);
  10. if (BolaDeAlexNro == 2) {
  11. AlexPerdidas++;
  12. } else {
  13. BolaDeAlex = Urna.charat(BolaDeAlexNro);
  14. Parte1 = substring(Urna, 1, BolaDeAlexNro);
  15. trace(Parte1);
  16. Parte2 = substring(Urna, BolaDeAlexNro+2, Urna.length);
  17. trace(Parte2);
  18. Urna = Parte1+Parte2;
  19. // trace(Urna);
  20. // Elección de la 2nda persona, Bart:
  21. BolaDeBartNro = random(2);
  22. if (BolaDeBartNro == 1) {
  23. BartPerdidas++;
  24. } else {
  25. CamiloPerdidas++;
  26. }
  27. }
  28. }

También podrías utilizar String.subtring (o mejor String.substr que es más parecido) que es muy similar pero trabaja con índices, subtring es para Flash4 y la documentación de Flash5 dice que está desestimada, que mejor es usar String.subtring.

(Por el mensaje de MCKys Argentina) Yo tengo entendido de que tienes el manual de ActionScript que acompaña a Flash5, al menos yo he visto que haces referencia a ese manual en varios de tus mensajes, si no es así aquí lo tienes:

Guía de Consulta de ActionScript 1.0 (Flash5 Español):
https://mega.nz/file/Z9YnTZZC#YESSiH8Y_gJRwYfqOgwsIqCvr6JGGphV0AmgjiEWT0Q

Citar
Además no vi algo que sirva para remover un caracter.

Como en muchos lenguajes clásicos los String son inmutables (no puedes modificar sus caracteres individual y directamente), lo que puedes hacer es convertirlos o crear directamente un Array, o como muestra tu ejemplo anterior tomar partes y reasignar toda la String

Entre los métodos que tienes para modificar directamente un Array con una instrucción está Array.splice:

Código
  1. BaseUrna = ["W", "W", "B"];
  2. AlexPerdidas = 0;
  3. BartPerdidas = 0;
  4. CamiloPerdidas = 0;
  5. function Sortear () {
  6. // Preparar urna:
  7. Urna = BaseUrna;
  8. // Elección de la 1er persona, Alex:
  9. BolaDeAlexNro = random(3);
  10. if (BolaDeAlexNro == 2) {
  11. AlexPerdidas++;
  12. } else {
  13. BolaDeAlex = Urna.charat(BolaDeAlexNro);
  14. urna.splice(BolaDeAlexNro, 1);
  15. // trace(Urna);
  16. // Elección de la 2nda persona, Bart:
  17. BolaDeBartNro = random(2);
  18. if (BolaDeBartNro == 1) {
  19. BartPerdidas++;
  20. } else {
  21. CamiloPerdidas++;
  22. }
  23. }
  24. }

Nota: Quería poner al inicio:

Código
  1. BaseUrna = "WWB";
  2. BaseUrna = BaseUrna.split(""):
  3.  

Para obtener el Array desde el String de forma sencilla pero veo que Flash5 no soporta poner una String vacia "" como separador aunque la documentación diga que si se puede, con Flash6 y superiores no hay problema.

Citar
myString.concat(valor1,...valorN);
Argumentos

valor1,...valorN
Cero o más valores que se van a concatenar.

Descripción

Método; combina los valores especificados y devuelve una nueva cadena. Si es necesario, cada argumento valor se convierte en una cadena y se anexa, en orden, al final de la cadena.
No se entiende bien lo de ",...", imagino que es cualquier cantidad de valores, y los concatena, pero es más fácil hacer esto:
Concatenado = ""+Valor1+Valor2;
o:
Concatenado = String(Valor1)+Valor2;

Quizá la diferencia es que .concat modifica el valor. No:
Código:
BaseUrna = "ABC";
BaseUrna.concat("D");
trace(BaseUrna);
eso me da ABC.

No entiendo qué hace exactamente o qué ventaja tiene comparado con lo que dije.

",..." Si, eso implica que ese método soporta más argumentos, Si quiero formar la palabra "pepe grillo" puedo hacer: "pep".concat("e", " ", "gril", "lo"). Como todo hay varias formas de lograr algo en programación, cual utilizar dependerá de cada quien o el grado de legibilidad que queira obtener, por ejemplo puede ser mejor usar concat si estás trabajando con números pero quieres concatenarlos, usar + puede llegar ser más confuso o puede que termines sumando si no te fijas bien. Y no, no modifica un String (son inmutables) solo devuelve un nuevo String con el cambio realizado.

Citar
La cosa es que esto de cortar tiene poco, sólo es obtener parte de una cadena.

Citar
myString.split(delimitador);
Argumentos

delimitador: El carácter utilizado para delimitar la cadena.

Descripción

Método. divide un objeto String rompiendo la cadena cuando se produce el argumento delimitador especificado y devuelve las subcadenas en una matriz. Si no se especifica delimitador, la matriz devuelta contiene solamente un elemento: la propia cadena. Si el delimitador es una cadena vacía, cada carácter del objeto String se convierte en un elemento de la matriz.
No lo entiendo, lo pruebo.
BaseUrna.split(0): ABC
BaseUrna.split(1): ABC
BaseUrna.split(2): ABC
BaseUrna.split(3): ABC
No sé, no veo división, ni siquiera cambio. ¿Hay que especificar el caracter, no es un número?

Si, tienes que ser un String el delimitador, también ya comenté que hay un problema con Flash5 y no puedes convertir un String en un Array si el delimitador es un String vacío ( String.split("") )

---
Todo lo demás me parece que ya lo has resuelto, sino solo comenta

64  Programación / Programación C/C++ / Re: ¿Por qué se muestra mal? en: 3 Diciembre 2024, 23:57 pm
Esos problemas los veo bastante en gente que pone su código en Editores de Texto Enriquecido como Microsoft Word, Adobe Indesign, etc, dudo que se pongan a programar usando Word, pero si es común verlos en manuales, tutoriales, webs, o guías, el detalle es que estos Editores suelen cambiar las comillas normales: " " por comillas caligráficas/cursivas/typográficas o como las llamen: « » “ ”, luego el usuario las copia tal cual para su código y se dan estos problemas. En programación se usan siempre las comillas normales " " para los String, o las comillas simples ' ' dependiendo del leguaje, aunque siempre puede haber un lenguaje raro XD
65  Programación / Python / Re: Python falla en usar la ñ. en: 2 Diciembre 2024, 13:18 pm
Estás usando Windows 7 y como es algo antiguo su Bloc de Notas por defecto guarda con codificación ANSI, Python por defecto trabaja con UTF-8 y si no le dices lo contrario para él le estás dando un archivo de código bajo esa codificación.

Opción 1: Si usas el Bloc de Notas de Windows 7 guarda tu archivo de código bajo la codificación UTF-8:



Opción 2: Especifica en tu código el tipo de codificación que estás usando para que Python no asuma que es UTF-8 y mande error ("se cierra rápido"), como el Bloc de Notas de Windows 7 por defecto guarda en ANSI pues tu primera línea en tu código debe ser: # -*- coding: ANSI -*-, esto es parte del PEP-263 que menciona MCKSys Argentina

Código
  1. # -*- coding: ANSI -*-
  2.  
  3. charset = "abcdefghijklmnñopqrstuvwxyz"
  4. with open("passwords.txt", "w", encoding="utf-8") as txt :
  5.  for a in charset :
  6.    for b in charset :
  7.      for c in charset :
  8.        for d in charset :
  9.          txt.write(a + b + c + d + "\n")

- Con eso le dices que tu archivo de código está en ANSI, obviamente debe estar guardado como ANSI, repito: por defecto el Bloc de Notas de Windows 7 guarda en ANSI

Opción 3: Usa un editor de texto plano más actual, por ejemplo Notepad++ o SublimeText que ofrecen coloreado y cierta ayuda para trabajar con código (por defecto ya guardan en UTF-8), estos son muy ligeros pero al no especializarse con un lenguaje no serán tan potentes como un IDE como el que recomendó MCKSys Argentina: PyCharm (PyCharm Comunity es gratis) que debe estar pesando sus 500 MB y no si será compatible con tu Windows 7, tengo entendido que trabajas con Flash 5 que de IDE tiene poco, no tiene autocompletar ni ayudas como si lo tienen los Flash modernos tal cual tienen los IDE como PyCharm

---
- Si quieres saber bajo que codificación está guardado tu archivo de código usando el Bloc de Notas solo dale en Guardar como y verás debajo su codificación actual (ANSI o UTF-8)

- Tu código se ejecuta en modo Consola, por ello se cierra cuando termina o da error. Como toda aplicación de consola debes abrir una Consola para ejecutar ahí tu script y ver más detalles/errores, acá replico tu error:



Ese \xF1 que es el hexadecimal 0xF1 corresponde al caracter ñ en codificación ANSI, Python da error porque esperaba un caracter UTF-8 que usa dos bytes para representar caracteres no ASCII, 0xC3 0xB1 corresponden a la ñ en UTF-8

- Si no hay errores no hubiera problemas en ejecutarlo en la consola o directamente, al menos no en este caso porque no muestra ningún resultado en pantalla (no hay print() de python o "trace() de ActionScript")

66  Media / Multimedia / Re: Ver video lentamente. en: 1 Diciembre 2024, 15:32 pm
Yo soy usuario de Media Player Classic Home Cinema (MPC-HC que viene con K-Lite Standard), es mi reproductor favorito por la cantidad de formatos que soporta, la sencillez de su interfaz y atajos de teclado.

Citar
Por poner un ejemplo, en el MPC-HC BE (Black Edition) la velocidad y el zoom solo se puede aumentar o disminuir en saltos de factores / porcentajes predefinidos bastante grandes (ej. Aumentar la velocidad del video de un x2 a un x4 directamente) algo así como las velocidades predefinidas en Youtube para que nos entendamos, sin haber alguna velocidad más intermedia, mientras que SMPlayer permite un ajuste más gradual o progresivo por así decirlo, en saltos de +/- 0.4 para la velocidad y de un +/- 0.5 para el ajuste del zoom.

Siendo el MPC-HC BE un derivado de mi reproductor favorito podría decir que deberían de tener las mismas funcionalidades al menos, el aumento de velocidad es configurable, puedes especificar en Configuración un porcentaje fijo, por ejemplo yo le pongo 5%, luego con el botón o el atajo de teclado Ctrl + Flecha arriba o abajo puedes incrementar/decrementar la velocidad en saltos de ese porcentaje



- En caso del zoom con redimensionar la ventana del reproductor se ajusta, pero si te refieres al zoom (o cualquier transformación) de los fotogramas del video es muy sencillo con MPC-HC usando el teclado numérico, por ejemplo con la tecla 1 se hace zoom negativo, con la tecla 9 haces zoom positivo, con 5 restableces, con 2, 4, 6 y 8 reduces/amplías por los extremos, puedes usar combinaciones con Ctrl o Alt para girar, mover y más

Citar
Uso el Windows Media Classic y si bien tiene esa función, no funciona en los videos que lo preciso, quizá debido al formato (asf, y cambiarle la extensión manualmente no lo soluciona).

A mi si me funciona en mi Windows 7 y está virgen/original porque es virtual recién instalado, salvo que estés hablando de otro reproductor de video o tu archivo ASF esté usando otros códecs:



- Si el Windows Media Player que ya trae Windows te está dando el problema sube un archivo ASF que tengas para probarlo o usa otro reproductor de video

No te vale cambiarle la extensión obviamente, en el mejor de los casos el Reproductor detectará la extensión incorrecta y lo trabajará con la extensión correcta, en el peor de los casos te dirá que el archivo está dañado

---
Supuestamente los WMV y ASF no soportan por estándar acelerar o desacelerar o eso leí en algunos foros pero no me convence, por eso algunos reproductores no lo hacen, de todas maneras en MPC-HC se puede activar la funcionalidad:



- Por defecto viene desactivado ese filtro, solo hay que activarlo, cerrar y volver a abrir el MPC-HC y ya podrás aumentar o disminuir la velocidad de reproducción en los WMV y ASF
67  Programación / Python / Re: Generar diccionarios con Phython. en: 30 Noviembre 2024, 18:31 pm
ActionScript 1 y 2 no están preparados para cosas extenuantes, si se detecta que un frame está ejecutando código extenuante manda alerta y ofrece cancelarlo. Quizá ActionScript 3 sea más para esas cosas pero no lo probé.

Citar
Lo había visto pero en el resultado me pareció que faltaban casos, ahora lo probé de nuevo y no, no sé qué pasó.

Quizá lo cerraste antes de que terminara, es bastante lo que tiene que calcular y escribir, aunque a mi me tarde algunos segundos puede que a ti te tarde algunos minutos, por ejemplo el código que pusiste al inicio del mensaje (el que te dio la IA) es demostrativo para no demasiados caracteres y/o para combinaciones cortas, estimo que tu PC podrá con hasta longitudes de 5, con 6 a mi ya me consume mis 16GB de Ram, para evitar ese alto consumo de Ram hay que evitar tener variables con contenido demasiado pesado, es decir, ir escribiendo una a una las contraseñas generadas en el archivo en lugar de guardarlo todo en una variable y luego esto al archivo.

Código
  1. import itertools
  2. import time
  3.  
  4. t = time.time()
  5.  
  6. alfabeto = "ABCDEF0123456789"
  7. combinaciones = itertools.product(alfabeto, repeat=6)
  8.  
  9. archivo = open("combinaciones.txt", "w")
  10.  
  11. for combinacion in combinaciones :
  12.  archivo.write( ''.join(combinacion) + "\n" )
  13.  
  14. archivo.close()
  15.  
  16. print(time.time() - t)

Utilizo time para tomar una muestra del tiempo antes de ejecutar el código y al final de que termine vuelvo a tomar otra muestra para restarla y obtener el tiempo que tardó el código en ejecutarse, a mi me devuelve 12.860882043838501 que son casi 13 segundos, el consumo se Ram es mínimo (no más de 5MB), todo recae en el consumo de CPU aunque a mi procesador no lo satura, va al 18% con 4GHz (todos estos datos los vez en tu Administrador de Tareas), el archivo generado pesa 128MB
68  Programación / Python / Re: Generar diccionarios con Phython. en: 29 Noviembre 2024, 15:35 pm
Citar
¿Cómo se traduciría más o menos literalmente al español, esa línea de código?
"Juntar en combinacion, lo que está en combinaciones", podría ser, pero ¿por qué dice combinacion 2 veces?
¿Y los corchetes, las comillas y el punto, para qué?
Pregunto por si tiene algún motivo importante digamos, si es como una configuración, sino bueno, es así y ya xD

Pasa que en Python se pueden simplificar las cosas y puede llegar a verse algo raro (recomprimido) el código porque hay varias instrucciones encadenadas en una misma línea.

Ya debe queda claro que lo siguiente: combinaciones = itertools.product(alfabeto, repeat=4) es como decir: combinaciones = [['a','a','a','a'], ['a','a','a','b'], ['a','a,'a','c'], etc]

También debería quedar claro el uso de FOR IN, supongo que aún no lo has usado en ActionScript aunque su funcionamiento es un poco diferente, por ejemplo:

Código
  1. vocales = ["a", "e", "i", "o", "u"]
  2. for (index in vocales) {
  3.  trace(vocales[index])
  4. }
  5.  

- Nótese el uso de un plural (vocales) para nombrar a un Array, en ActionScript index tomará las pociones numéricas de cada elemento del Array (0, 1, 2, 3, 4) por eso se usa vocales[index] para mostrar cada valor del Array. La idea es recorrer un Iterable (Array, Objeto) y trabajar con cada miembro de ese iterable.

- En Python la diferencia es que en lugar de un índice (index) directamente se utiliza cada uno de los valores, sería algo así (código ficticio):

Código
  1. vocales = ["a", "e", "i", "o", "u"]
  2. for (vocal in vocales) {
  3.  trace(vocal)
  4. }

Lo que python sería:

Código
  1. vocales = ["a", "e", "i", "o", "u"]
  2. for vocal in vocales :
  3.  print(vocal)

- Nótese que es más legible llamar vocales al Array (objeto iterable) y vocal a la variable que irá tomando cada valor del Array.

Entonces la línea recomprimida:

Código
  1. resultado = [''.join(combinacion) for combinacion in combinaciones]

- Es en sí varias instrucciones a la vez, la estructura ejemplificada de esa instrucción sería: [vocal for vocal in vocales], lo del FOR IN ya está claro, pero no tiene cuerpo, su cuerpo está a la izquierda y ahí debe estar la variable vocal y los cambios que se le harán a dicha variable, como todo está entre corchetes implica que en cada iteración el resultado del cuerpo del for se irá agregando a un Array (List o lista en Python).

- El ''.join(combinacion) que es el cuerpo del FOR lo que hace es unir un Array usando el String especificado '' (dos comillas simples, nada en este caso porque ese String está vacío), el Array a unir es combinacion, recordar que combinación irá teniendo los valores: ['a','a','a','a'], ['a','a','a','b'], ['a','a,'a','c'], etc, por lo que irá devolviendo: 'aaaa', 'aaab', 'aaac', etc, y repito, como TODO esa instrucción recomprimida está entre corchetes esos valores devueltos formarán un nuevo Array cuyos miembros serán los valores devueltos, en resumen sería algo como:

Código
  1. resultado = ['aaaa', 'aaab', 'aaac', etc]

---
Ya en otro mensaje te dejé la forma clásica de usar python para crear diccionarios, supongo que es más legible y más ahora, tiene 6 rondas de for por lo que generará combinaciones de 6 caracteres: AAAAAA, AAAAAB, AAAAAC, etc con el juego de caracteres (charset) dado

Código
  1. charset = "ABCDEF0123456789"
  2. with open("passwords_python.txt", "w") as txt :
  3.  for a in charset :
  4.    for b in charset :
  5.      for c in charset :
  6.        for d in charset :
  7.          for e in charset :
  8.            for f in charset :
  9.              txt.write(a + b + c + d + e + f + "\n")


Si quieres hacer comprobaciones previas las puedes hacer en los cuerpos de algún for o antes de escribir en el archivo
69  Programación / Python / Re: Generar diccionarios con Phython. en: 28 Noviembre 2024, 16:28 pm
0. Python es un lenguaje "diferente" puede llevar cierta similitud con los lenguajes clásicos pero ten una mente flexible porque muchas cosas solo se parecerán un poco o serán cosas totalmente diferentes a las que ya conozcas aunque te parezcan familiares o simplemente serán "increíbles" XD

Citar
Quisiera que me expliquen algunas cosas...

Código
  1. resultado = [''.join(combinacion) for combinacion in combinaciones]

La variable resultado es... ''.juntar(¿?) para ¿? en combinaciones.
¿Qué es combinacion y qué hace todo eso exactamente? Nunca les vi sentido a los for xP

- Se lee desde el for, ese for lo que hace es crear una variable combinacion que irá tomando cada uno de los valores de combinaciones

- combinaciones sería como un Array de Arrays, por ejemplo equivaldría a hacer:
combinaciones = [['a','a','a','a'], ['a','a','a','b'], ['a','a,'a','c'], etc]

- Ahora vayamos a los corchetes [ ... ], hay un ''.join(combinacion) que sería el cuerpo del for y lo que hace es unir lo que en ese momento tenga la variable combinacion, por ejemplo si tuviera el Array ['a','a','a','a'] lo une quedando un String: 'aaaa'. Por último, como todo está encerrado entre los dichosos corchetes cada variable combinación se irá adjuntando en un Array y se guardará en la variable resultado, por ejemplo al final equivaldría a:
resultado = ['aaaa', 'aaab', 'aaac', etc]

NOTA: Lo que seguramente conoces como Arrays en lenguajes como ActionScript en Python se llaman Listas (List) y son prácticamente iguales, los llamo Arrays en los ejemplos para que sea más amigable para tí, también espero que estés familiarizado con los Arrays en ActionScript.

Citar
Código
  1. with open("combinaciones.txt", "w", encoding="utf-8") as archivo:
Con abrir archivo combinaciones.txt, ¿w?, parámetro que no necesito, como archivo

Me habían dado otra forma de guardar:
Código
  1. with open("passwords_python.txt", "w") as txt:
Por eso dije que lo de encoding no lo necesito, lo que no entiendo es la w y que uno dice archivo y el otro txt ¿eso último es un nombre de resúmen que se le pone al archivo para referirse a él dentro del programa?

- 'w' o "w" (write, permiso de escritura) es un String que determina con que permisos vas a abrir el archivo, si no pones nada por defecto lo abrirá como solo lectura "r" y obviamente te dará error si intentas escribir en él.

- El encoding es importante cuando usas caracteres fuera del ASCII, por ejemplo una palabra que siempre prueban para la codificación en el lenguaje español es ñandú, lleva ñ y ú que rompen muchas cosas. Si no lo especificas se usa la codificación que usa el Sistema Operativo, en mi caso con Windows usa ANSI, pero ahora todo suele utilizar la codificación UTF-8, también dependerá de tu programa con el que abres el archivo resultante, si intentan utilizar o detectan una codificación que no corresponde se verán caracteres extraños.

- Si, tanto archivo como txt serán la variable con la que te podrás referir al archivo abierto luego en el código.

Citar
Y eso de "con abrir (nombre)" tampoco parece tener sentido. Lo normal es cosas como "with a hammer, drive a nail", o sea, "con objeto, hacer algo". Si se dice "con verbo, hacer algo", también podría entenderlo, pero aquí la acción parece el verbo, no sé, no es algo como "Crear archivo (nombre)", eso sí tendría sentido.

Código
  1.    for combinacion in resultado:
  2.        archivo.write(combinacion + "\n")

Para ¿? en resultado
al archivo agregarle (¿? + salto de línea)
No sé qué es combinacion, tal vez algo que itertools crea por defecto, o sea, esa variable no se definió.

- combinacion es una variable creada ahí mismo para ser utiliza por el FOR, IN resultado especifica una variable ITERABLE existente, que sea iterable implica que se pueda descomponer en otras variables y tomar cada una de estas para que combinacion tome ese valor en cada iteración del bucle FOR, por ejemplo python que es muy flexible puedes iterar Strings: nombre = "pepe", es válido poner: for letra in nombre, letra irá tomando una a una las letras de "pepe", otro ejemplo más clásico: vocales = ["a", "e", "i", "o", "u"], también es válido poner: for vocal in vocales, donde vocal irá tomando cada vocal del Array vocales.

- El for que estamos viendo está iterando cada palabra generada, con archivo.write escribes en el archivo, pero obviamente debes poner un salto de línea luego de cada palabra "\n" para que no quede todo en una sola línea

- Por último el WITH lo que hace acá es encerrar parte del código de la apertura de un archivo para que terminado ese código se cierre el archivo automáticamente, claro, porque si dejas el archivo abierto no lo liberas (tanto en código como en memoria), acá no es tan necesario porque muerto el programa cerrado el archivo, pero si necesitas cerrarlo en la ejecución del programa es útil, otra opción es hacer el cerrado manual:

Código
  1. open("combinaciones.txt", "w", encoding="utf-8") as archivo:
  2. for combinacion in resultado:
  3.    archivo.write(combinacion + "\n")
  4. close(archivo)
70  Media / Multimedia / Re: Texto apareciendo a medida que moto lo atraviesa. en: 27 Noviembre 2024, 13:50 pm
Citar
EDIT: Ahora probé poner la moto en la máscara y el cuadro en una capa normal. El resultado fue que la moto no se movió y el cuadro se expandió. Conclusión: Lo que se pone en la máscara no se modifica.

También hice algunas pruebas y al parecer es una limitación de ActionScript 1, en la documentación tampoco hay mención a las máscaras, sin embargo en la documentación de ActionScript 2 si se ve que hay nuevas funciones para trabajar con máscaras desde ActionScript
Páginas: 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ... 235
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines