Python/Generalidades/Operaciones de entrada y salida básica

De Wikilibros, la colección de libros de texto de contenido libre.
Ir a la navegación Ir a la búsqueda

Índice de la sección
«Generalidades»

Operaciones de Entrada:

Python tiene dos funciones designadas para aceptar información directa del usuario 1) Raw_input() 2) Input() a) La función Raw_input() le pide al usuario una cadena de información y simplemente retorna la cadena, también puede tomar un argumento el cual se muestra en forma aviso antes que el usuario introduzca la información. Ej: Print Raw_input(‘¿ cual es tu nombre ?’) El ejemplo anterior muestra un aviso con el texto “¿Cuál es tu nombre?” y después toma el valor del usuario y lo imprime (Print). Nota: En 3.x la funcion raw_input() fue renombrada a input() entonces para tener el funcionamiento explicado anteriormente se tiene que usar: eval(input()). b) La función input() utiliza raw_input() para leer una cadena de información y después la trata de evaluar como si fuera un programa en Python y seguidamente retorna el valor del resultado. Por lo que al introducir [1,2,3] nos regresaría una lista conteniendo esos números como si hubiera sido diseñada directamente en Python. Tambien podemos introducir expresiones mas complicadas como por Ej: x=input(‘cuales son los primeros 10 cuadrados perfectos?’) El usuario podria ingresar: Map(lambda x: x*x, range(10)) Lo cual nos regresaría la respuesta correcta en forma de lista. Podemos utilizar la función file la cual nos permite abrir un archivo desde el constructor de la siguiente manera: Archivo=file(‘C:\MiArchivo.txt’,r) El primer argumento es la dirección absoluta del archivo y el segundo argumento el modo de acceso ya sea lectura (r) , escritura (w) o ambos (rw).

Operaciones de Salida

La manera básica de realizar una operación de salida es mediante la palabra clave Print ‘Hola Mundo!’ Imprime “ Hola Mundo! “ Se puede utilizar comas para impimir varias cosas en la misma linea Print ‘hola’,’como’,’estan’ Imprime “hola como estan” Ojo que el resultado incluye ya un espacio entre las palabras debido a la coma. Para terminar una línea utilizamos un print sencillo sin nada mas. for i in range(10):

   print i,

print for i in range(10,20):

   print i,

Esto nos imprime 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 También podemos utilizar sys.stdout.write para salida de la siguiente manera import sys write = sys.stdout.write write('UNI') write('TEC\n') sys.stdout.flush() # Para que lo imprima rapidamente. Esto nos imprime “ UNITEC ”

Tipos de Datos Complejos

a) Diccionarios b) Listas c) Tuplas

Diccionarios

Uno de los tipos incorporados de Python es el diccionario, que define relaciones uno a uno entre claves y valores. Un diccionario en Python es como un hash en Perl. En Perl, las variables que almacenan hashes siempre empiezan con un carácter %. En Python las variables se pueden llamar de cualquier manera, y Python sabe su tipo internamente. Un diccionario en Python es como una instancia de la clase Hashtable de Java. Un diccionario en Python es como una instancia del objeto Scripting.Dictionary de Visual Basic. Ej. Definición de un diccionario >>> d = {"server":"mpilgrim", "database":"master"} >>> d {'server': 'mpilgrim', 'database': 'master'} >>> d["server"] 'mpilgrim' >>> d["database"] 'master'

>>> d["mpilgrim"] Nos presenta un error:

Traceback (innermost last):

 File "<interactive input>", line 1, in ?

KeyError: mpilgrim

Primero creamos un nuevo diccionario con dos elementos y lo asignamos a la variable d. Cada elemento es un par clave-valor, y el conjunto de los elementos se encierra entre llaves. 'server' es una clave, y su valor asociado, referenciado por d["server"], es 'mpilgrim'. 'database' es una clave, y su valor asociado, referenciado por d["database"], es 'master'. Puede obtener los valores por su clave pero no las claves por su valor. De manera que d["server"] es 'mpilgrim', pero d["mpilgrim"] genera una excepción, porque 'mpilgrim' no es una clave.

Listas

Una lista de Python es como un array en Perl. En Perl, las variables que almacenan arrays siempre empiezan con el carácter @; en Python, las variables se pueden llamar de cualquier manera, y Python se ocupa de saber el tipo que tienen. Una lista en Python es mucho más que un array en Java (aunque puede usarse como uno si es realmente eso todo lo que quiere en esta vida). Una mejor analogía podría ser la clase ArrayList, que puede contener objetos arbitrarios y expandirse de forma dinámica según se añaden otros nuevos.

Ej.

>>> li = ["a", "b", "mpilgrim", "z", "ejemplo"]

>>> li ['a', 'b', 'mpilgrim', 'z', 'ejemplo']

>>> li[0] 'a'

>>> li[4] 'ejemplo'

Primero definimos una lista de cinco elementos. Observe que mantienen su orden original. Esto no es un accidente. Una lista es un conjunto ordenado de elementos encerrados entre corchetes. Una lista se puede usar igual que un array basado en cero. El primer elemento de cualquier lista que no esté vacía es siempre li[0]. El último elemento de esta lista de cinco elementos es li[4], porque las listas siempre empiezan en cero.

Tuplas

Una tupla es una lista inmutable. Una tupla no puede cambiar de ninguna manera una vez creada. Ej. >>> t = ("a", "b", "mpilgrim", "z", "ejemplo") >>> t ('a', 'b', 'mpilgrim', 'z', 'ejemplo') >>> t[0] 'a' >>> t[-1] 'ejemplo' >>> t[1:3] ('b', 'mpilgrim')

Una tupla se define de la misma manera que una lista, excepto que el conjunto de elementos se encierra entre paréntesis en lugar de corchetes. Los elementos de una tupla tienen un orden definido, como una lista. Los índices de las tuplas comienzan en cero, igual que una lista, de manera que el primer elemento de una tupla que no esté vacía siempre es t[0]. Los índices negativos cuentan desde el final de la tupla, justo como en una lista. También funciona el slicing. Observe que cuando parte una lista, obtiene una nueva lista; cuando parte una tupla, obtiene una nueva tupla.


Python-logo-notext.svg Python: Índice · Introducción · Enlaces