Generador de contraseñas (PyQt)

…-*- coding: utf-8 -*- # # Copyright 2015 Recursos Pythonwww.recursospython*]}*.com # # from random import choice from string import (ascii_letters, ascii_lowercase, ascii_uppercase, digits, punctuation) from PyQt4.QtCore import pyqtSlot, Qt, QEvent from PyQt4.QtGui import QApplication, QMainWindow, QRegExpValidator from gui import Ui_MainWindow class MainWindow(QMainWindow): def __init__(self): QMainWindow.__init__(self) self.window = Ui_MainWindow

Tareas en segundo plano con PyQt/PySide

Tareas en segundo plano con PyQt/PySide

…scarga», self) self.button.move(20, 60) self.button.pressed.connect(self.init*]}*Download) def init*]}*Download(self): self.label.setText(«Descargando archivo…») # Deshabilitar el botón mientras se descarga el archivo. self.button.setEnabled(False) # Ejecutar la descarga en un nuevo hilo. self.downloader = Downloader( «https://www.python.org/ftp/python/3.7.2/python-3.7.2.exe», «python-3.7.2.exe» ) # Qt invocará el método `downloadFinished()` cuando el h

ftplib – Cliente para el protocolo FTP

formación sobre los archivos y carpetas en la ubicación actual. LIST es un comando definido por el protocolo, así como otros que también pueden aplicarse en esta función como RETR, NLST o MLSD. Para más información sobre los comandos véase RFC 959. El segundo parámetro es la función callback a la que se llama por cada dato recibido, por ejemplo: def callback(info): print info … ftp.retrlines(‘LIST’, callback) … Resulta en lo mismo que en el có…

Palabras reservadas del lenguaje

…o. try: f = open(«info.txt») raise Exception f.close() except Exception: print f.closed # False Véase PEP 343 – The «with» Statement para más información. yield Se comporta al igual que return, con la diferencia que en lugar de retornar un único valor, retorna elementos que conforman un generador (un objeto iterable que puede recorrerse una vez, ya que el contenido no es almacenado en la memoria), por lo que puede emplearse múltiples veces en una…

Lectura y escritura de archivos

…or: UnicodeEncodeError: ‘ascii’ codec can’t encode character u’\xed’ in position 13: ordinal not in range(128) El problema radica en que open() espera una cadena de tipo ASCII, por lo que al utilizar otras codificaciónes como UTF-8 la función falla. import codecs f = codecs.open(«archivo.txt», «w», «utf-8″) f.write(u»Esto es una línea.») f.close() Este código es ejecutado sin problemas. codecs.open() añade un tercer argumento en el que puede espec…

Buscador multiplataforma de archivos iguales

Buscador multiplataforma de archivos iguales

…el programa debe especificarse una ruta de raíz de la siguiente forma: python dupsearch.py ruta Algunos ejemplos: python dupsearch.py «C:/Users/Pc Usuario/Documents» python dupsearch.py /home Actualización 02/11/2015: optimización del código e implementación de múltiples hilos de acuerdo a la cantidad de núcleos del procesador para un mejor rendimiento. Fuente #!/usr/bin/env python # -*- coding: utf-8 -*- from __future__ import print_function from…

Iteradores, iterables y la función next()

Iteradores, iterables y la función next()

…f.i = 0 def __next__(self): if self.i >= len(self.lista): raise StopIteration item = self.lista[self.i] self.i += 1 return item Esta clase recibe como argumento una lista y retorna sus elementos en orden a través de cada llamada a __next__(). Cuando el contador interno indica que ya se han retornado todos los elementos, arroja StopIteration. Comprobémoslo: lista = [«A», «B», «C», «D»] iterador_lista = IteradorLista(lista) print(iterador_lista.__ne…

Lista (Listbox) en Tcl/Tk (tkinter)

Lista (Listbox) en Tcl/Tk (tkinter)

…tilizado en Tcl, pero no está pensado para las estructuras de datos de Python. Como se puede ver, todos los ítems se añaden como una única cadena separados por un espacio. Para obtener los elementos de la lista, la función get() también retorna una cadena. listbox_items = items.get() print(listbox_items, type(listbox_items)) Esto imprime: (‘Python’, ‘C’, ‘C++’, ‘Java’) <class ‘str’> Si quisiéramos acceder a un elemento en particular, deberíamos co…

Controlar el navegador – webbrowser

…ectivamente. Por ejemplo: python -m webbrowser -t «https://www.recursospython*]}*.com/» Realmente lo que hace el módulo es llamar a un determinado navegador con sus correspondientes argumentos para abrir el documento o sitio deseado, de la manera indicada. El usuario utiliza la función webbrowse.get() para obtener el navegador por defecto o el que se indique en el parámetro opcional name. Dicha función lee la variable de entorno BROWSER si es que ésta

Confirmación vía correo electrónico en web2py

Confirmación vía correo electrónico en web2py

…value = current.cache.disk(value_key, lambda: None, _EXPIRATION) # Remove it once used. current.cache.disk(value_key, None) if value is not None: return loads(b64decode(value)) def validate_code_from_request(service): «»» Sames as `validate_code()`, but the code itself is take from request.args(0). If it is None or invalid, 404 is raised. «»» code = current.request.args(0) if code is None: raise HTTP(404) storage = validate_code(service, code) if…