11-12 de Mayo 2010
10-18 Horas
Auditorio Sotero Prieto 2
Conjunto Amoxcali. Facultad de Ciencias.
Ciudad Universitaria, México D.F.

  • Share/Bookmark

Supongamos que tenemos una carpeta con los siguientes archivos HTML:

Carpeta con archivos HTML

Carpeta con archivos HTML

Cada archivo HTML tiene el siguiente código:

Código HTML

Código HTML

El objetivo es cambiar este código en todas esas páginas HTML:

<a href=”http://www.pagina.com/cambiameConPython/”> Link </a>

por

<a href=”http://www.pagina.com/cambiadoConPython/”> Link </a>

para ello ocupamos el siguiente código en Python:

def cambiaTextoEnArchivo(archivo, cadenaABuscar, cadenaParaReemplazar):
  print(archivo);
  try:
    #Abre el archivo para lectura de datos
    archivoLectura = open(archivo,”r”);
    textoOriginal=archivoLectura.read();
    archivoLectura.close();
  except (RuntimeError, TypeError, NameError, IOError):
    print (“Error en la ubicacion o nombre del archivo”);
    exit();
  #Modifica la cadena del texto original del archivo
  if textoOriginal.find(cadenaABuscar) >= 0:
    textoModificado = textoOriginal.replace(cadenaABuscar,cadenaParaReemplazar);
    #Abre el archivo para escritura de datos
    archivoEscritura = open(archivo,”w”);
    archivoEscritura.writelines(textoModificado);
    archivoEscritura.close();
    print (“Se ha modificado el texto original.”);
  else:
    print (“No se encontro el texto buscado en el texto original. “);
    print (“No se realizo ningun cambio.”);
import glob;
import os;
dir=’/home/drickmees/html/*.html’;
try:
  ficheros=glob.glob(dir);
except (RuntimeError, TypeError, NameError, IOError, OSError):
  print (“Error en la ruta del directorio”);
  exit();
cadenaABuscar=”http://www.pagina.com/cambiadoConPytho2n/”;
cadenaParaReemplazar=”http://www.pagina.com/cambiameConPython/”;
i=1;
for fichero in (ficheros):
  cambiaTextoEnArchivo(fichero, cadenaABuscar, cadenaParaReemplazar);
  i=i+1;
if i<2:
  print(“No hay archivos en el directorio”);

Ver la imagen del código:
python001
Espero sea de utilidad.
Referencías:
ArchivosyDirectoriosConPython

<a href=”http://www.pagina.com/cambiameConPython/”> Link </a>”<a href=”http://www.pagina.com/cambiameConPython/”> Link </a>
  • Share/Bookmark

En la disciplina matemática del álgebra lineal, el algoritmo de Strassen, llamado así por Volker Strassen, es un algoritmo usado para la multiplicación de matrices. Es asintóticamente más rápido que el algoritmo de multiplicación de matrices estándar, pero más lento que el algoritmo más rápido conocido, y es útil en la práctica para matrices grandes.

imagenalgoritmostrassen

  • Share/Bookmark

Dentro de lo que es la programación no lineal existe un método de búsqueda de máximos o mínimos de funciones llamado Método Simplex (no confundir con el Simplex de programación lineal), este método fue modificado por Nelder y Mead obteniendo el MSM (Método Simplez Modificado). Me parecio interesante, sin embargo tiene la desventaja de que no usa gradientes.

simplexmodificadoMétodo Simplex Modificado

  • Share/Bookmark

El siguiente algoritmo recorre un array  de tamaño n de tal forma que checa si el i-esimo elemento es menor a los demás elementos tales que i>i+j con j que va de i+1 hasta n, en caso de no serlo va sustituyendo el elemento i+j menor por el elemento i de tal forma que el array se ordena de menor a mayor. Este algoritmo corresponde a una pregunta de un examen de diseño y análisis de algoritmos.

El algoritmo esta diseñado en Python

#Python 2.5

#ordenacionXSustitucion.py

a=[9,18,30,2,6,8,3,98,23,434,98,7,66,45,90,12,232,802]

print a

for i in range(0,len(a)-1):

for j in range(i,len(a)):

if a[i]>a[j]:

x=a[j]

a[j]=a[i]

a[i]=x

print a

x=raw_input(“Presiona Enter para salir. “)

  • Share/Bookmark

¿Alguna pregunta?

© 2010 David Ricardo Suffusion WordPress theme by Sayontan Sinha