Python es un lenguaje de programación
creado por Guido van Rossum
a finales de los ochentas cuyo nombre
está inspirado en el grupo de
cómicos ingleses “Monty Python”.
Se trata de un lenguaje interpretado o de script, con tipado dinámico
(no es necesario declarar el tipo de dato que va a contener una
determinada variable),
fuertemente tipado (no permite tratar a una
variable como si fuera de un tipo distinto al que tiene),
multiplataforma (UNIX, Solaris, Linux, DOS, Windows, OS/2, Mac OS,
etc.). Se trata además de un lenguaje de programación
multiparadigma
ya que soporta orientación
a objetos, programación
imperativa y, en menor medida, programación
funcional.
Su sintaxis
simple, clara y sencilla;
el tipado dinámico, el gestor de memoria, la
gran cantidad de
librerías disponibles y la potencia del lenguaje, entre
otros,
hacen que desarrollar una aplicación en Python sea sencillo y
rápido.
Algunos casos de éxito en el uso de
Python son Google, Yahoo, la
NASA, Industrias Light & Magic, y
todas las distribuciones Linux, en
las que Python cada vez
representa un tanto por ciento mayor de los
programas disponibles.
Ligas de interés acerca de Python:
#!/usr/bin/python print "\n******* Entrada desde teclado *********\n" #lee la linea desde teclado y la regresa como cadena de caracteres str1 = raw_input("Entrada 1: "); print "Entrada recibida : ", str1 #lee la linea desde teclado y la recibe como una expresion valida de Python str2 = input("Entrada 2: "); print "Entrada recibida : ", str2 print "\n********Acceso a subcadenas de una cadena*******\n" str3='Monica Guadalupe Elizondo Amaya' print "str3: ", str3 print "str3[0], str3[7], str3[17], str3[26]: ", str3[0], str3[7], str3[17], str3[26] print "str3[0:5]", str3[0:5] print "\n********Algunos ejemplos de manejo de listas*******\n" x=2 y='hola' z=1.4 lista1 = ['Monica', 2013, 0.5, x,y,z]; lista2 = [3,5,8,9,5,7,5]; lista3 = lista1+lista2 print "lista1: ", lista1 print "lista2: ", lista2 print "lista3:", lista3 print "lista2[1:4]: ", lista2[1:4] del lista1[2]; #borra el elemento en la posicion 2 de lista1 lista1.remove(1.4) #borra un elemento especifico de lista1, aqui tomo el valor de z lista1.append('tu') #inserta la cadena al final de la lista lista1.insert(0,z) #inserta el elemento en la posicion 0 de lista1, aqui inserto z print "lista1 modificada: ", lista1 print "x en lista1: ", x in lista1 print "2 en lista1: ", 2 in lista1 print "'Monica' en lista1: ", 'Monica' in lista1 print "'on' en lista1: ", 'on' in lista1 print "'4' en lista1: ", 4 in lista1 print "Numero de repeticiones del 5 en lista 2: ", lista2.count(5) print "Indice de primera aparicion del 5 en lista 2: ", lista2.index(5) print "\n********Diccionarios*******\n" dict = {'Nombre': 'Miguel', 'Edad': 27, 'Ciudad': 'Monterrey', 'Turno': 'Matutino', 'Salon': 401}; print dict; print "dict['Nombre']: ", dict['Nombre']; print "dict['Edad']: ", dict['Edad']; print "dict.keys(): ", dict.keys(); print "dict.values(): ", dict.values(); items=dict.items(); print "items=dict.items(): ", items; item=items[1]; print "item=items[1]: ", item; print "item[0]: ", item[0], " item[1]: ", item[1]; print "usando sorted: ", sorted(dict.keys()); print "\n\n"
A continuación se muestra la salida:
El siguiente programa imprime las palabras de un archivo de texto su el número de repeticiones. Se escoge entre imprimir todas en orden alfabético o imprimir las 10 palabras más repetidas.
#!/usr/bin/python #el modulo sys contiene informacion sobre el sistema import sys # Regresa un diccionario que mapea cada palabra del archivo con su contador def word_count_dict(filename): word_count = {} input_file = open(filename, 'r') for line in input_file: words = line.split() #regresa el numero de palabras en la linea for word in words: word = word.lower() #Convierte todas las letras mayusculas a minusculas if not word in word_count: word_count[word] = 1 else: word_count[word] = word_count[word] + 1 input_file.close() return word_count #imprime en cada linea cada palabra del archivo y su contador en orden alfabetico def print_words(filename): word_count = word_count_dict(filename) words = sorted(word_count.keys()) for word in words: print word, word_count[word] # regresa el contador de la dupla palabra:contador def get_count(word_tuple): return word_tuple[1] #imprime el la lista top 10 del archivo de texto def print_top(filename): word_count = word_count_dict(filename) # items es el conjunto de duplas # Ordena las palabras en del diccionario en orden no creciente respecto a sus apariciones # key es una funcion que transforma cada elemento a ser comparado, en este caso se utiliza para extraer el contador de la dupla palabra/contador items = sorted(word_count.items(), key=get_count, reverse=True) for item in items[:10]: print item[0], item[1] def main(): if len(sys.argv) != 3: print 'argumentos: ./contador.py {count | topcount} filename' sys.exit(1) option = sys.argv[1] filename = sys.argv[2] if option == 'count': print_words(filename) elif option == 'topcount': print_top(filename) else: print 'opcion desconocida: ' + option sys.exit(1) if __name__ == '__main__': #es de utilidad para cuando este modulo es re-utilizado en otro modulo main() #para identificar que el main se realize solo cuando se ejecuta este modulo.
Salidas del programa imprimiendo todas las palabras del texto en orden alfabético y las 10 mas repetidas.
No hay comentarios:
Publicar un comentario