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

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


  Mostrar Mensajes
Páginas: 1 2 3 [4] 5 6 7 8 9
31  Programación / Scripting / Re: Bases de datos utilizando archivo .txt en Python. en: 14 Noviembre 2022, 04:44 am
hola: hay varias cosas:
1) se puede mejorar la velocidad de la creación de listas con listas por comprensión
2)el segundo valor de range no es incluido, así que debes sumarle uno más si querés 100.000
3)cuando se usan varios enteros es un poco díficil la lectura por lo cual se puede usar "_"
4)para escribir el archivo no es necesario un bucle.

Ejemplo de lo que digo:
Código
  1. import time
  2.  
  3. inicio = time.time()
  4. otra=[f"{x}, Yo vivo en este mundo pero no pertenezco a las leyes de este mundo" for x in range(1,100_001)]
  5. fin = time.time()
  6. print(fin-inicio) #comparalo con el tiempo de la otra forma, ésta debería ser más rápida.
  7.  
  8. with open("registro.txt","a") as archivo:
  9.    archivo.write('\n'.join(otra))
  10.  

y listo un archivo con 100.000 líneas
32  Programación / Scripting / Re: wait windows para tkinter... en: 11 Noviembre 2022, 09:44 am
TheLonelyPain

Hola, perdón por corregirte , pero no quiero que esa respuesta quede como válida  por si la lee alguien más y pretende aplicarla.
Si bien sleep funciona con python, sleep trae conflictos con tkinter, por eso existe una función propia llamada after.
pongo un ejemplo:

Código
  1. import tkinter as tk
  2.  
  3. def muestra():
  4.    def eliminar_ventana():
  5.        ventana.destroy()
  6.  
  7.    ventana = tk.Toplevel(master=principal)
  8.    ventana.geometry("400x200")
  9.    tk.Label(ventana, text="Esta copia se autodestruirá en 5 segundos").pack()
  10.    ventana.after(5000,eliminar_ventana)
  11.  
  12. principal = tk.Tk()
  13. principal.geometry("200x200")
  14. tk.Button(principal,text='Abrir secundaria', command=muestra).pack()
  15. principal.mainloop()

Saludos.
33  Programación / Scripting / Re: ¿Funciona match...case con pygame? [PYTHON 3.10] en: 4 Noviembre 2022, 06:05 am
¿y qué te hace pensar que fue implementado para ahorrar código? Es más que todo por que viene de otros lenguajes y muchos lo pedían, no ahorra código en si,  sino que parece menos feo por la cantidad de if.
34  Programación / Scripting / Re: ¿Funciona match...case con pygame? [PYTHON 3.10] en: 2 Noviembre 2022, 20:43 pm
si funciona, ahora no tengo python 10 por problemas con otras bibliotecas y no lo puedo probar, lo que recuerdo es que no se puede ahorrar tanto código, sino me equivoco sería:
Código
  1. teclas = pygame.key.get_pressed()
  2.  
  3.        # Movimientos del objeto.
  4.        match teclas:
  5.            case teclas[pygame.K_LEFT]:
  6.                self.velocidad_x = -10
  7.            case teclas[pygame.K_RIGHT]:
  8.                self.velocidad_x = 10
  9.            case teclas[pygame.K_UP]:
  10.                self.velocidad_y = -10
  11.            case teclas[pygame.K_DOWN]:
  12.                self.velocidad_y = 10
  13.  
35  Programación / Scripting / Re: Multiprocessing y MatPlotLib en: 24 Octubre 2022, 03:22 am
ahora no estoy con posibilidad de mirarlo, mañana lo veo.
36  Seguridad Informática / Hacking / Re: AYUDA AL CAMBIAR UNOS DATOS EN UN PROGRAMA PORTABLE en: 24 Octubre 2022, 03:21 am
bueno, tiene control crc, es cuestión de buscar la cadena del mensaje y las llamadas a él ,para evitarlas, evidentemente no tiene packer si le hicieron modificaciones.
37  Programación / Scripting / Re: Que todos los entry dentro de un frame sean readonly en tkinter. en: 23 Octubre 2022, 00:34 am
Hola Daniel:
                   Si ya tenés pyqt6 en principio es lo mismo, para las modificaciones de versiones te fijas en la documentación y listo. Espero que hayas entendido el ejemplo de los entry. Saludos.
38  Programación / Scripting / Re: Multiprocessing y MatPlotLib en: 23 Octubre 2022, 00:30 am
debo ser honesto y decir que la verdad nunca e usado with con multiprocess, por lo cual te muestro que cambiaría:

Código
  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. import multiprocessing
  4. from lines import start
  5. import bars
  6.  
  7. if __name__ == "__main__":
  8.    fig, ax = plt.subplots(2, 2)
  9.    context =multiprocessing.get_context("spawn")
  10.    proceso = context.Process(start(plt, fig, ax[0, 0] ))
  11.  


con eso ya debería funcionar y a partir de ahí las modificciones pertinentes con las funciones start y join
39  Programación / Scripting / Re: Que todos los entry dentro de un frame sean readonly en tkinter. en: 21 Octubre 2022, 21:43 pm
bueno, no voy a usar tu código tal cual, solo modifico y copio algunas cosas para dejarlo funcional y mostrarte como lo haría:
Código
  1. #-*- coding:utf-8 -*-
  2. import tkinter as tk
  3. from tkinter import ttk
  4.  
  5. LETRA = ("Vardana", 12)
  6.  
  7. class Ventana:
  8.    def __init__(self,principal):
  9.        self.principal = principal
  10.        self.apariencia()
  11.        self.bloquear()
  12.  
  13.    def apariencia(self):
  14.        self.contenedor = tk.Frame(self.principal)
  15.        self.contenedor.place(x=5, y=85)
  16.        self.contenedor.config(width="416", height="213")
  17.        self.contenedor.config(bd=5)
  18.        self.contenedor.config(relief="ridge")
  19.        mensaje_epe = tk.Label(self.contenedor,text="E.P.E - Factura......$\t\t             Kwh....$",font=LETRA)
  20.        mensaje_epe.place(x=5, y=10)
  21.        mensaje_gas = tk.Label(self.contenedor,text="Gas - Factura.........$\t\t             M3......$",font=LETRA)
  22.        mensaje_gas.place(x=5, y=50)
  23.        mensaje_comuna = tk.Label(self.contenedor, text="Comuna..................$",font=LETRA)
  24.        mensaje_comuna.place(x=5, y=90)
  25.        mensaje_ceodal = tk.Label(self.contenedor, text="Ceodal....................$", font=LETRA)
  26.        mensaje_ceodal.place(x=5, y=130)
  27.        mensaje_cable = tk.Label(self.contenedor, text="Cable Max..............$",font=LETRA)
  28.        mensaje_cable.place(x=5, y=170)
  29.  
  30.        entrada_epe_monto = tk.Entry(self.contenedor, font=(LETRA), width=10)
  31.        entrada_epe_monto.place(x=155, y=10)
  32.        entrada_epe_kwh = tk.Entry(self.contenedor, font=(LETRA), width=5)
  33.        entrada_epe_kwh.place(x=335, y=10)
  34.        entrada_gas_monto = tk.Entry(self.contenedor, font=(LETRA), width=10)
  35.        entrada_gas_monto.place(x=155, y=50)
  36.        entrada_gas_M3 = tk.Entry(self.contenedor, font=(LETRA), width=5)
  37.        entrada_gas_M3.place(x=335, y=50)
  38.        entrada_comuna = tk.Entry(self.contenedor, font=(LETRA), width=10)
  39.        entrada_comuna.place(x=155, y=90)
  40.        entrada_ceodal = tk.Entry(self.contenedor, font=(LETRA), width=10)
  41.        entrada_ceodal.place(x=155, y=130)
  42.        entrada_cable = tk.Entry(self.contenedor, font=(LETRA), width=10)
  43.        entrada_cable.place(x=155, y=170)        
  44.  
  45.  
  46.        caja_botones = tk.Frame(self.principal)
  47.        caja_botones.place(x=5, y=305)
  48.        caja_botones.config(width="416", height="60")
  49.        caja_botones.config(bd=5)
  50.        caja_botones.config(relief="ridge")
  51.  
  52.        boton_agregar = ttk.Button(caja_botones, text="Agregar",command=self.desbloquear)
  53.        boton_agregar.place(x=5, y=5, width=80, height=40       )  
  54.  
  55.  
  56.    def bloquear(self):
  57.        for x in range(5,12):
  58.            self.contenedor.winfo_children()[x].config(state= "readonly")
  59.  
  60.    def desbloquear(self):
  61.        for x in range(5,12):
  62.            self.contenedor.winfo_children()[x].config(state= "normal")        
  63.  
  64. def centrar_Ventana(root):
  65.    w = 430
  66.    h = 375
  67.    ws = root.winfo_screenwidth()
  68.    hs = root.winfo_screenheight()
  69.    x = (ws/2) - (w/2)
  70.    y = (hs/2) - (h/2)
  71.    root.geometry('%dx%d+%d+%d' % (w, h, x, y))        
  72.  
  73. def  inicial():
  74.    raiz=tk.Tk()
  75.    raiz.title(" Servicios.")
  76.    centrar_Ventana(raiz)    
  77.    ventana=Ventana(raiz)
  78.    mensaje_mes = tk.Label(raiz, text="Mes", font=(LETRA))
  79.    mensaje_mes.place(x=15, y=10)    
  80.    raiz.mainloop()
  81.  
  82. if __name__=='__main__':
  83.    inicial()
  84.  
  85.  

Edito:
Dicho sea de paso, veo que estás intentando hacer aplicaciones mejores, por lo que te recomendaría dos cosas: 1) empezá a usar clases 2) tkinter sirve pero para aplicaciones de más nivel(y de menos también) es mejor aprender pyqt5 , si bien está pyqt6, todavía no encontré muchos ejemplos para que se puedan seguir, así que es solo siguiendo la documentación, en cambio pyqt5 está plagado de ejemplos.
40  Programación / Scripting / Re: Que todos los entry dentro de un frame sean readonly en tkinter. en: 21 Octubre 2022, 16:28 pm
Citar
Encontré por allí una manera de hacerlo con un bucle for, pero no me convenció.-
No tengo idea que manera encontraste, porque no la pusiste, pero desde ya te digo que la única manera viable es con un ciclo ¿sino como recorres cada elemento del frame?
Páginas: 1 2 3 [4] 5 6 7 8 9
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines