Está en la página 1de 11

Python

Breve descripción del lenguaje

Lenguaje de Programación surgido en la década del 90, producido por el científico de


computación Guido van Rossum. Se cuenta con intérpretes de Python en múltiples
plataformas: Windows, Linux, Mac etc. Se pueden desarrollar aplicaciones de escritorio
como aplicaciones web. Empresas como Google, Yahoo, Nasa etc. utilizan este lenguaje
para sus desarrollos (actualmente el creador de Python Guido van Rossum trabaja para
Google.). Python es un lenguaje de alto nivel y permite realizar programación estructurada,
lineal y orientada a objetos.
Existen dos ramas de versiones del lenguaje y su versionado. La versión 2.X contiene su
última actualización en la versión 2.7.10, mientras que la versión 3.4.3 es la más actual en
la versión 3.X. Entre ambas ramas de versiones existen diferencias respecto a su sintaxis y
dado que recomiendan usar la rama más actual, existen algunos sistemas operativos que no
soportan esta versión.
Por último es importante citar que es un lenguaje elegido por la mayoría de las
universidades de EE.UU por su simplicidad, potencialidad y portabilidad en distintas
plataformas.

Estructura de un programa en Python

Un programa realizado en Python tiene la siguiente estructura:

Parte Declarativa
- Declaración de librerías o módulos adicionales a utilizar. Se utiliza la
palabra reservada “Import”
- Declaración de tipos definidos por el usuario.
- Declaración de constantes. Se utiliza la palabra reservada “Const”
- Declaración de variables y el tipo de datos que pertenece.
- Declaración de funciones. Se utiliza la palabra reservada “Def”
Cuerpo
Se define la lógica del programa.

Tipos de datos principales

Enteros Corto: Int: -2.147.483.648 a 2.147.483.647


Enteros Largo: Long:
-9.223.372.036.854.775.808 a 9.223.372.036.854.775.807
Real: Float
±2,2250738585072020 x 10-308 a ±1,7976931348623157×10308.
Los números reales o flotantes se expresan con “puntos” y no con
“comas”.

String: Str: Secuencia de char.

Lógicos: Bool: True – False

Conjuntos: Se define primero el tipo


Ej:
# crea un conjunto sin repetidos
plato = ['pastel', 'tequeno', 'papa', 'empanada', 'mandoca',
'queso']

# establece un conjunto a una variable


para_comer = set(plato)
print para_comer

Algunos Operadores

+ Suma
- Resta
* Multiplicación
** Exponente
/ División
// División Entera
% Módulo
== Para preguntar si dos variables o valores son iguales.
!= Para preguntar si dos variables o valores son distintas.
Operadores lógicos de <,<=, >, >= Se usan las palabras reservadas “<”,”<=”, “>” y “>=”
Operador lógico “o” / “∨” : Se usa la palabra reservada “or”.
Operador lógico “y” / “∧” : Se usa la palabra reservada “and”.

Conversores

Int: Convierte la expresión encerrada entre paréntesis en un entero.


Str: Convierte la expresión encerrada entre paréntesis en un string.
Bool: Convierte la expresión encerrada entre paréntesis en un booleano.
Float: Convierte la expresión encerrada entre paréntesis en un decimal.

Equivalencias con los gráficos de diagramación

Entrada/ingreso de datos

variable= Input(). Dentro de los paréntesis del Input


podemos poner un texto o mensaje que indique el valor a
ingresar. Todo lo que captura el Input es un valor cadena o
string por lo que, si queremos ingresar otro tipo de dato en el
ingreso debemos convertirlo antes. Por ejemplo, si quiero
ingresar un dato entero, entonces la sentencia sería:
x=Int(Input(“Ingrese un numero”)) donde el valor ingresado
se almacena en la variable entera x.
Salida de datos o mostrar resultados

Print(). Dentro de los paréntesis del Print podemos mostrar


un mensaje o el valor de una variable. Por defecto Print
realiza un salto de línea. Si se desea que la salida o respuesta
sea a continuación, se podría utilizar el argumento opcional
end. Por ejemplo:
print("¿Cómo se llama? ", end="")
nombre = input()

Mostraría:

¿Cómo se llama? _

Asignaciones y operaciones.

En el caso de las asignaciones se utiliza el símbolo “=”. La


operaciones de suma, resta, división y multiplicación se
utilizan con los símbolos “+,-,*,/”. Ej: c=c+1

Decisión simple

If condición:
“lista de instrucciones”
Else:
“lista de instrucciones”.

Si la condición boleana es verdadera se realizará las instrucciones


correspondientes luego de los “:”, en caso contrario, se realizará las
instrucciones luego de la palabra reservada “else:”.
If x>0:
c:=c+1
x:=y
else:
c:=c-1
y:=x
Decisión múltiple
No está implementado en este lenguaje. Hay situaciones
lógicas que se pueden simular usando la sentencia elif:

if condición booleana:
lista de instrucciones
elif condición booleana:
lista de instrucciones
elif condición booleana:
lista de instrucciones
..
..
else condición booleana:
lista de instrucciones

Ej:
print("ingrese un numero entre 1 y 3")
x=int(input())
if x==1:
print("Es el numero 1")
elif x==2:
print("Es el numero 2")
elif x==3:
print("Es el numero 3")
else:
print("Numero inválido")

Ciclos Repetitivos
1) For variable in range(vble):
Lista de instrucciones
Ejecuta el ciclo tantas veces como el valor que tenga la variable
encerrada en la palabra reservada range
Ej.
suma=0
print ("ingrese la cantidad de numeros a sumar")
n=int(input())
for i in range(n):
print ("Ingrese el numero",i+1)
a=int(input())
suma=suma+a
print ("La suma de los", str(n), "números es", str(suma))

Observación: La variable i empieza desde el valor 0, por ello en el ejemplo se


muestra i+1 para indicar el orden del número que ingresa.

2) For variable in range(vmin, vmax):


Lista de instrucciones

Ejecuta el ciclo vmax-vmin veces

Ej.

print ("Muestra la tabla del 2 desde el 1 hasta el 10")


for i in range(1,11):
print ("2*",i," es:", 2*i)

For variable in range(vmin, vmax, paso):


Lista de instrucciones

Ejecuta el ciclo desde el vmin hasta vmax-1 cada paso

print ("Muestra la tabla del 2 solo de los números impares


desde el 1 hasta 9")
for i in range(1,10,2):
print ("2*",i," es:", 2*i)
For variable in range(vmax, vmin, paso):
Lista de instrucciones

Ejecuta el ciclo desde el vmax hasta vmin-1 donde paso(debe


ser un valor o vble. Negativa.
print ("Muestra los numeros descrecientes desde 20 hasta 1")
for i in range(20,0,-1):
print ("numero:", i)

Ciclos Condicionales con evaluación al principio

while condición:
Lista de instrucciones

print ("ingrese un nro. para calcular la cantidad de dígitos")


x=int(input())
aux=x
c=0
while x>0:
x= x // 10
c=c+1
print("El número: ",aux,"tiene ", c, " dígitos")

Ciclos Condicionales con evaluación al final

while True
Lista de instrucciones
If condición boolena:
break

Ej.:

print ("ingrese un nro. para calcular la cantidad de dígitos")


x=int(input())
aux=x
c=0
while True:
x= x // 10
c=c+1
if x==0:
break
print("El número: ",aux,"tiene ", c, " dígitos")

Algunas reglas principales del lenguaje

- Para las variables, Python hace una distinción entre minúsculas y mayúsculas.
- Después de cada ciclo o decisión debe ir “:” y las instrucciones tienen que estar
identadas.
- Los comentarios empiezan con el carácter “#”
- No poner caracteres blancos en las siguientes situaciones:
- Inmediatamente dentro de paréntesis, corchetes o llaves.
- Inmediatamente antes de una coma, un punto y coma o dos puntos.
- Más de un espacio alrededor de un operador de asignación
- Las palabras reservadas de Python son: and, as, assert, break, class, continue,
def, del, elif, else, except, finally, for, from, global, if, import, in, is, lambda,
onlocal, not, or, pass, raise, return, try, while, with, yield
Descarga del lenguaje

Windows y otras plataformas

Ingresar al sitio oficial https://www.python.org/downloads/ y descargar la versión 3.xx

Androide

Ingresar a Play Store y descargar e instalar el Qpython 3.


Funciones para el manejo de string en Python

len: Calcula la cantidad de caracteres de un string

find: Regresa el índice correspondiente al primer carácter de la cadena


original que coincide con lo que estamos buscando.

str.find(str, beg=0 end=len(string))

upper y lower: Convierte todos los caracteres de una cadena de texto


a mayúsculas o a minúsculas

strip, lstrip y rstrip: Para eliminar todos los espacios en blanco, solo
los que aparecen a la izquierda y solo los que se encuentran a la
derecha.

Equivalencias con el Left, Right y Mid de otros lenguajes:

a) Cadena[:valor numérico] extrae tantos caracteres desde la


izquierda como indica el valor numérico.
b) Cadena[valor numérico:] extrae tantos caracteres desde el
valor numérico hacia el final del texto.
c) Cadena[valor numérico1:valor numérico2] extrae caracteres
desde valor numérico1 inclusive hasta el 2.

Ejemplo

fec="12/02/2015"
d=fec[:2]
m=fec[3:5]
a=fec[6:]
print("dia:",d)
print("mes:",m)
print("año:",a)

Otros Módulos

Sys: Interactúa con el sistema de Python


Ejemplos:

path: Acceso a la ruta del sistema


version: Retorna el número de versión de Python con información adicional
maxint: Retorna el número positivo entero mayor, soportado por Python

Os: Interactúa con el sistema operativo


Ejemplos:

mkdir: crea un directorio


rename(actual, nuevo): renombra un archivo
rmdir(path): Elimina un directorio

math: Acceso a funciones matemáticas


Ejemplos:

sin,cos etc: funciones trigonométricas


log,log10: logaritmos naturales y decimales

time: Acceso a funciones de fecha y hora


..
Unidad 4 - Estructuras de datos compuestas

Repaso de conceptos
Concepto de tipo de dato

“Un tipo de dato es un conjunto de posibles valores y conjunto de posible operaciones sobre ellos”

Concepto de estructura de datos


“Es un conjunto o colección de valores organizados de una manera específica en la memoria de la
computadora”

Concepto de vble. simple


“Es una porción de memoria destinada a almacenar un valor de un tipo de dato dado.”

Concepto de Vector- Array unidimensionales


“Es una porción de memoria destinada a almacenar valores de un mismo tipo de dato, bajo un determinado
orden e índice que referencia a cada posición”

Gráficamente un vector en memoria tiene la siguiente estructura


Nombre de la variable

Donde en cada celda se almacena un valor del mismo tipo de datos.

Por ejemplo un vector de string de 5 elementos con el nombre “prov” puede ser el
siguiente:
prov
‘salta’ ‘jujuy’ ‘tucuman’ ‘formosa’ ‘chaco’

De cada posición se puede consultar el valor que contiene. Cada vez que referenciamos a
una posición usamos por convención los símbolos “[]”. Por ejemplo:

Prov[2] Contiene ‘jujuy’


Prov[4] Contiene ‘formosa’
Prov[5] Contiene ‘chaco’

El tipo de datos “string” contiene una particularidad, en el sentido que lo podemos tratar
como una variable simple que contiene el total del contenido string, o como un vector del
cual podemos acceder a cada uno de sus caracteres. En el caso que tengamos un vector de
“string”, como el ejemplo que se mostró anteriormente, se puede referenciar a cada uno de
los elementos del vector y a su vez a cada uno de los caracteres del string. Por ejemplo:
Prov[2][3] Contiene “j” ; Prov[4][4] Contiene “m”; Prov[5][1] Contiene “c”

A continuación se muestran otros ejemplos de vectores :


a) Vectores de integer de 4 posiciones con el nombre X.
X
127 158 169 3

X[1]127; X[2]158; X[3]169; X[4]3

b) Vectores de boolean de 4 posiciones con el nombre Ban.


Ban
True False False False

Ban[1]True; Ban [2]False; Ban [3]False; Ban [4]False

c) Vectores de char de 3 posiciones con el nombre Letras.


Letras
‘A’ ‘F’ ‘B’ ‘G’

Letras[1]’A’; Letras[2]’F’; Letras[3]’B’; Letras[4]’G’

Justificación del uso de vectores


- En algún momento se necesita manejar una cantidad de datos como todo un conjunto.
- Se necesitan almacenar datos que posteriormente se los va a utilizar.

Los vectores en Python - Definición

En Python los vectores deben definirse, antes de utilizarlos, en la parte inicial con la
siguiente sintaxis:
variable=[None]*dimensión
Ej:
n=int(input())
v=[None]*n

Carga de Datos

For indice in range(dimensión)


Vector[índice]=input()

Mostrar datos

For indice in range(dimensión)


Print(Vector[índice])
o directamente
print vector
La dimensión indica la cantidad de elementos que puede contener el vector. Es importante
definir en forma correcta este valor ya que se produce un error cuando se trata de asignar
valores fuera del rango definido.

Ejercicios prácticos que necesitan la estructura vector para resolverse

Ejemplo 1: Dada una lista de N números, ingresar todos los números, calcular el promedio
y mostrar al finalizar todos los números que sean mayores al promedio.
Ejemplo 2 : Determinar el mayor de una lista y luego contar cuantas veces se repite en la
lista.
Ejemplo 3: Se tiene dos listas. La primera, de M elementos contiene los nombres de las
personas del Anses. En la segunda de M*2 elementos contiene el Dni de dichas personas y
la edad. Se desea obtener dos listas que muestre en la primera las personas mayores a 70
años con su Dni y en la segunda los menores e iguales a 70 con su Dni..
Ejemplo 4: Eliminar los elementos repetidos de un vector de palabras.
Ejemplo 5: Dadas dos listas de números de m y n elementos. Determinar que números de
la lista 1 se encuentran en la lista 2.
Unidad 4 - Arreglos bidimensionales

Gráficamente un vector en memoria tiene la siguiente estructura


Nombre de la variable

Donde en cada celda se almacena un valor del mismo tipo de datos.


Para almacenar un valor o recuperarlo, debemos usar dos índices que identifique a la fila y
la columna correspondiente.

Por ejemplo una matriz de 2 filas por 2 columnas de caracteres puede ser el siguiente:
C
“C” “A”
“S” “A”

De cada posición se puede consultar el valor que contiene. Cada vez que referenciamos a
una posición usamos por convención los símbolos “[fila, columna]”. Por ejemplo:

C[1,2] Contiene ‘A’


C[2,1] Contiene ‘S’

Justificación del uso de vectores


- En algún momento se necesita manejar una cantidad de listas como todo un conjunto.

Los vectores en Python - Definición


En Python los vectores de dos dimensiones deben definirse, antes de utilizarlos, en la parte
inicial con la siguiente sintaxis:

VariableMatriz=[[0 for variable in range(dimension columna)] for variable in range(dimension fila)]

Ej:
m=int(input())
n=int(input())
x=[[0 for k in range(n)] for k in range(m)]

O una sintaxis alternativa sería:

variablematriz=[]
for i in range(dimension fila):
x.append([0]*dimensión columna)
Ej:

m=int(input())
n=int(input())
x=[]
for i in range(m):
x.append([0]*n)

Carga de Datos

for indice1 in range(dimension fila):


for indice2 in range(dimension columna):
variable[indice1][indice2]=input()
Ejemplo

for i in range(m):
for j in range(n):
x[i][j]=input()

Mostrar datos
for indice1 in range(dimension fila):
for indice2 in range(dimension columna):
print(variable[indice1][indice2])
o directamente
print variable

for i in range(m):
print()
for j in range(n):
print(x[i][j]," ", end="")

Las dimensiones indica la cantidad de elementos que puede contener el vector. Es


importante definir en forma correcta este valor ya que se produce un error cuando se trata
de asignar valores fuera del rango definido.

También podría gustarte