Como tokenizar un String en 86 lenguajes
No es del todo exacto el titulo, pero no importa, pues una vez que entreis y lo veais creo que la web será un recurso muy útil para cualquier programador.
El ejemplo de tokenizar el string viene en este enlace, pero el enlace que tenemos que guardar en favoritos es:
Enlace | Rosetta Code
Aprender a manejar Emacs
Hace un tiempo publiqué en este blog un artículo en el que daba una lista de editores para programadores, libres y para Linux, claro. Uno de los editores que incluí en la lista fue Emacs, considerado por algunos como el mejor y más completo editor de código fuente para programadores, aunque otros lo tachen de [...]Gedit Multi Terminal Plugin
Gedit Multiple Terminal plugin es un plugin para Gedit que nos permite disponer de varias pestañas para controlar más de un terminal ( o consola) empotrada, al más puro estilo de kate.
Aviso que no me ha funcionado en todas las instalaciones de Ubuntu 11.04/11.10 (puede que por las dependencias), aunque en su defecto, la instalación consiste únicamente en copiar los archivos: mterminal.py y mterminal.gedit-plugin al directorio ~/.gnome2/gedit/plugins. entonces deshabilitas el plugin Terminal plugin si lo tuvieras activado (sudo apt-get install gedit-plugins) y activas el plugin mterminal recien instalado.
Para abrir o cerrar las multiples terminales basta con hacer click derecho en una de las terminales y aparecera un menu emergente.
Enlace | gedit-mterminal
Vala Toys for Gedit
Vala Toys para Gedit es una colección experimental de plugins que extienden el editor Gedit para permitir una mejor programación en el lenguaje Vala.
Para instalarlo desde consola podemos ejecutar:
$sudo apt-get install gedit-valatoys-plugin
Enlace | vtg
PySQL: Un sqlplus mejor que sqlplus
Me gustan los clientes graficos SQL (Ejemplo: Dbeaver o Squirrel) pero no siempre podemos usarlos, y tenemos que usar un cliente de consola. En el caso de Oracle, el amo es “sqlplus”, muchas veces “amado” u “odiado” por otros. Pero si usas Python, Oracle y tienes instalado cx_Oracle (ver entrada anterior) tu experiencia puede ser mas agradable si usas PySQL (como siempre, cuestion de gustos). PySQL es un interprete de comandos para Oracle que puede ser un reemplazo completo de SQLPlus.
Para instalarlo, descargate los fuentes, descomprimelos y al igual que la instalacion de otros modulos para python:
$ sudo python setup.py install
Despues ya podremos ejecutar:
$ pysql <user>/<pass>@<servicio> para conectar
Enlace | Pantallazos | Lxnet
Crear, Leer y Modificar una Hoja Excel con Python
Trabajar con hojas excel desde python es bastante sencillo si hacemos uso de unas cuantos modulos que nos
facilitan esta labor, estos son:
- xlwt: utilizada para escribir excel
- xlrd: utilizada para modificar excel
- xlutils: require de las anteriores y son una serie de utilidades que nos permiten entre otras cosas,
copiar o modificar una excel previa.
Puedes descargarlas desde el siguiente enlace: http://www.python-excel.org/
La instalacion es tan simple como descomprimir el .tar.gz del modulo y ejecutar:
$ sudo python setup.py install
desde el directorio donde se descomprimen. Tambien puedes usar otras utilidades como easy_install o pip
para instalar mas facilmente modulos en Python:
Ejemplo:
$ sudo apt-get install python-setuptools
$ sudo easy_install xlwt
En Ubuntu tambien podemos instalar esos modulos directamente desde repositorio:
$ sudo apt-get install python-xlwt ptthon-xlrd
Nota: Antes de seguir con los ejemplos deberas tener instalados los 3 modulos: xlwt, xlrd y xlutils.
Primer ejemplo: Crear una hoja Excel
# Ejemplo de creacion de hoja Excel
import xlwt
from datetime import datetime
style0 = xlwt.easyxf('font: name Times New Roman, colour red, bold on')
style1 = xlwt.easyxf('',num_format_str='DD-MMM-YY')
wb = xlwt.Workbook()
ws = wb.add_sheet('A Test Sheet',cell_overwrite_ok=True)
ws.write(0, 0, 'Test', style0)
ws.write(1, 0, datetime.now(), style1)
ws.write(2, 0, 4)
ws.write(2, 1, 1)
ws.write(2, 2, xlwt.Formula("A3+B3"))
wb.save('example.xls')
En el codigo, importamos el modulo xlwt (import xwlt) que nos permite acceder a la libreria correspondiente
para escribir la hoja excel.
y basicamente definimos 2 estilos para la hoja. Uno con fuente de texto Times New Roman, negrita y color rojo
y otro para formatear una fecha.
Despues creamos el fichero excel:
wb = xlwt.Workbook()
Le añadimos una pestaña llamada “A teest sheet”:
ws = wb.add_sheet('A Test Sheet',cell_overwrite_ok=True)
nota: la opcion “cell_overwrite_ok=True” es para que permita sobreescribir celdas.
Y ya estamos listos para ir escribiendo valores en la excel. Por ejemplo:
ws.write(1, 0, datetime.now(), style1)
escribe en la posicion columna 0, fila 1 la fecha actual y aplicandole el estilo style1 definido anteriormente.
Tambien podemos escribir formulas:
ws.write(2, 2, xlwt.Formula("A3+B3"))
Y por ultimo cuando nos cansemos de añadir valores, guardamos finalmente la excel en la ruta deseada:
wb.save('example.xls')
Segundo Ejemplo: Leer una hoja Excel
Esta vez partimos del caso inverso. Creada ya una excel, queremos leer sus valores.
# Ejemplo de lectura de hoja Excel
import xlrd
book = xlrd.open_workbook("example.xls")
print "The number of worksheets is", book.nsheets
print "Worksheet name(s):", book.sheet_names()
sh = book.sheet_by_index(0)
print sh.name, sh.nrows, sh.ncols
print "Cell (2,0) is: ", sh.cell_value(rowx=2, colx=0)
for rx in range(sh.nrows):
print sh.row(rx)
Primero importamos el modulo “xlrd” con:
import xlrd
Eso nos permitira acceder a las funciones que nos permiten leer desde una excel.
Despues abrimos la excel:
book = xlrd.open_workbook("example.xls")
Con eso ya por ejemplo podemos imprimir el numero de pestañas (hojas de trabajo) que tiene o sus nombres:
print "The number of worksheets is", book.nsheets
print "Worksheet name(s):", book.sheet_names()
Si queremos leer los valores de alguna pestaña, primero la referenciamos, por ejemplo para
acceder a la primera:
sh = book.sheet_by_index(0)
Imprimimos su nombre y el numero de filas y columnas que la componen:
print sh.name, sh.nrows, sh.ncols
Si por ejemplo queremos acceder a la fila=2, columna=0 para recuperar su valor:
print "Cell (2,0) is: ", sh.cell_value(rowx=2, colx=0)
Y por ultimo, podemos recorrer la hoja entera para imprimir todos los valores de sus celdas:
for rx in range(sh.nrows):
print sh.row(rx)
Tercer Ejemplo: Modificar una hoja Excel
El problema de xlrd y xlwt es que no podemos por ejemplo abrir una excel ya creada, editarla y volver a guardarla,
si no que debemos abrir una copia de la excel original, modificarla y entonces ya guardarla con un nuevo nombre,
para todo esto, nos ayuda el ultimo modulo (xlutils).
Ejemplo:
# Ejemplo de modificacion de hoja Excel
from xlrd import open_workbook
from xlutils.copy import copy
rb = open_workbook('example.xls',formatting_info=True)
wb = copy(rb)
ws = wb.get_sheet(0)
ws.write(0,0,"I'm only changing cell A1")
wb.save('example2.xls')
En el ejemplo: hemos abierto una copia de la excel llamada “example.xls”
rb = open_workbook('example.xls',formatting_info=True)
wb = copy(rb)
Accedemos a la primera pestaña de la excel:
ws = wb.get_sheet(0)
Modificamos el valor de una celda:
ws.write(0,0,"I'm only changing cell A1")
Y ya la guardamos con otro nombre.
wb.save('example2.xls')
El efecto es el mismo, es como si hubieramos editado sobre la excel original.
Evidentemente este es un pequeño articulo introductorio y existen muchas mas funciones que nos pueden ser
de mucha utilidad, consultando la documentacion de las librerias podemos obtener mas informacion.
Aun asi dejo un par de enlaces adicionales, para completar la informacion proporcionada:
Enlace | Write Excel files with Python | Excel SpreadSheets and Python | Using python to write to an Excel | xlwt CheatSheet | Python and Excel
Canonical presenta sitio para desarrolladores de Ubuntu
La empresa responsable de Ubuntu, Canonical, ha presentado un nuevo portal para desarrolladores de aplicaciones en este sistema operativo. Esta plataforma está orientada principalmente a desarrolladores independientes y pequeñas empresas, que tendrán aquí un sitio donde encontrar reunida documentación técnica, ejemplos de otras aplicaciones, recursos orientados a la programación en el entorno Ubuntu, y por [...]devcheats para Android: La aplicacion que necesita cualquier desarrollador
Somos desarrolladores, nos gusta programar en practicamente cualquier lenguaje pero nos hacemos mayores y nos vamos olvidando cada vez de más cosas ^^, eso se acabo con devcheats, donde tendremos a mano las principales chuletas de programación.
Completala con | JQuery Reference | HTML5 Reference | JavaScript Reference y CSS3 Reference




