Como le he vuelto a dar la vida a mi PC. Instalé el Debian de nuevo, no podía faltar instalar el amado QT4. Así que me propuse como práctica crear este mismo código Consola ~> [Python]Decimal a binario y su invero, que por cierto también pasé a la web ~> Binary Converter Online. Esta vez en PyQT4 primero les dejo el screenshot de como se ve:
Y Su código :
Código
Y Decimal a Binario:
# -*- coding: utf-8 -*- # Autor : 0x5d ~> JaAViEr # Sitio Web ~> www.rootcodes.com # Twitter ~> @0x5d from PyQt4 import QtGui, QtCore import sys class testeo(QtGui.QWidget): def __init__(self, parent=None): QtGui.QWidget.__init__(self, parent) self.setWindowTitle("Bin to Dec | 0x5d") self.label_binario = QtGui.QLabel("Binario :", self).setGeometry(2,15,59,17) self.input_binario = QtGui.QLineEdit(self) self.input_binario.setGeometry(60,10,230,27) self.label_resultado = QtGui.QLabel("Resultado :", self).setGeometry(2,50,80,17) self.input_salida = QtGui.QLineEdit(self) self.input_salida.setGeometry(80,43,210,27) self.input_salida.setReadOnly(True) self.boton_limpiar = QtGui.QPushButton("Limpiar campos", self) self.boton_limpiar.setGeometry(1,75,140,27) self.boton_convertir = QtGui.QPushButton("Convertir", self) self.boton_convertir.setGeometry(145,75,140,27) self.connect(self.boton_limpiar, QtCore.SIGNAL("clicked()"), self.clear_inputs) self.connect(self.boton_convertir, QtCore.SIGNAL("clicked()"), self.conversor) def clear_inputs(self): self.input_binario.setText("") self.input_salida.setText("") def conversor(self): numero = str(self.input_binario.text()) t = 0 for i,h in zip(numero[::-1],range(0,len(numero))): t+=int(i)*2**int(h) self.input_salida.setText(str(t)) app = QtGui.QApplication(sys.argv) form = testeo() form.show() app.exec_()
Código ~>:
Código
# -*- coding: utf-8 -*- # Autor : 0x5d ~> JaAViEr # Sitio Web ~> www.rootcodes.com # Twitter ~> @0x5d from PyQt4 import QtGui, QtCore import sys class testeo(QtGui.QWidget): def __init__(self, parent=None): QtGui.QWidget.__init__(self, parent) self.setWindowTitle("Dec to Bin | 0x5d") self.label_binario = QtGui.QLabel("Decimal:", self).setGeometry(2,15,59,17) self.input_binario = QtGui.QLineEdit(self) self.input_binario.setGeometry(60,10,230,27) self.label_resultado = QtGui.QLabel("Resultado :", self).setGeometry(2,50,80,17) self.input_salida = QtGui.QLineEdit(self) self.input_salida.setGeometry(80,43,210,27) self.input_salida.setReadOnly(True) self.boton_limpiar = QtGui.QPushButton("Limpiar campos", self) self.boton_limpiar.setGeometry(1,75,140,27) self.boton_convertir = QtGui.QPushButton("Convertir", self) self.boton_convertir.setGeometry(145,75,140,27) self.connect(self.boton_limpiar, QtCore.SIGNAL("clicked()"), self.clear_inputs) self.connect(self.boton_convertir, QtCore.SIGNAL("clicked()"), self.conversor) def clear_inputs(self): self.input_binario.setText("") self.input_salida.setText("") def conversor(self): resto = [] nuevo = [int(self.input_binario.text())] while nuevo[-1]!=0: resto.append(nuevo[-1]%2) nuevo.append(nuevo[-1]/2) s = "" for i in resto[::-1]: s+="%s"%i self.input_salida.setText(str(s)) app = QtGui.QApplication(sys.argv) form = testeo() form.show() app.exec_()
Fuente : http://rootcodes.com/pyqt4binario-a-decimal-y-su-inverso/
Saludos, Javier.