0% encontró este documento útil (0 votos)
472 vistas

Presentación Fundamentos de Programación Con Python

El documento proporciona una introducción al lenguaje de programación Python. Se describe que Python fue creado en 1989 por Guido van Rossum y es un lenguaje de propósito general, de alto nivel, multi paradigma e interpretado. También se explican conceptos básicos como identificadores, tipos de datos, operadores, expresiones, cadenas y más.

Cargado por

Luiyi Calla
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
472 vistas

Presentación Fundamentos de Programación Con Python

El documento proporciona una introducción al lenguaje de programación Python. Se describe que Python fue creado en 1989 por Guido van Rossum y es un lenguaje de propósito general, de alto nivel, multi paradigma e interpretado. También se explican conceptos básicos como identificadores, tipos de datos, operadores, expresiones, cadenas y más.

Cargado por

Luiyi Calla
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 50

Ing.

Adrián
Alarcón B.
Especialista en
Interconexiones

Chilena
Fundamentos de Programación
con Python
El lenguaje Python

• Creado en 1989 por Guido van Rossum (CWI,


Amsterdam)
• Lenguaje de propósito general de alto nivel.
• Énfasis en la legibilidad del código
• Multi paradigma
• Orientado a indentación
• Manejo automático de memoria
• Tipado dinámico
• Interpretado https://www.youtube.co
• Apropiado para scripting m/watch?v=d0C1tDqH8
VM
El lenguaje Python
Stack Overflow ha publicado su encuesta a los desarrolladores 2020. Con el cuestionario han
entrevistado a casi 65.000 programadores para que les dijeran cosas cómo sus tecnologías favoritas,
los intereses tienen, y los sueldos que perciben.
El lenguaje Python
Introducción a la Programación

• Computadoras y Lenguajes
• Organización de la Computadora
• Dispositivos de entrada
• Teclado
• Mouse
• Dispositivos de salida
• Terminal
• Impresora
• Memoria: interna, externa.
• Unidad Central de Proceso (UCP)
Lenguajes de alto nivel

• Lenguaje de Máquina: Instrucciones básicas del


procesador de la máquina. Binario o hexadecimal.
Muy difícil de escribir programas
• Lenguaje assembler: Similar al lenguaje de máquina
pero con una sintaxis más cómoda.
• Lenguajes de alto nivel: Más cercanos a nuestra
manera de razonar y de expresarnos.
• Compiladores e Intérpretes: Aplicaciones que
permiten ejecutar un programa escrito en un
lenguaje de alto nivel
Compilación

• Lenguajes de alto nivel: Pascal, Java, C, Python,


Perl, etcétera.
• La computadora no "entiende" los lenguajes de
alto nivel.
• Un compilador es un programa que traduce a
código de máquina:
Lenguajes Interpretados

• Un intérprete es un programa que


• toma como entrada un programa fuente (por ej.
python)
• ejecuta las instrucciones del programa
• El intérprete está escrito en lenguaje de máquina
• Lenguajes interpretados: Basic, Lisp, Perl,
JavaScript, Php, Python
• Lisp, Java y Python permiten una compilación
intermedia (byte compilation)
Programación en Python
Identificadores en Python

• Usados para dar nombre a los diferentes objetos


que componen un programa:
• variables
• funciones
• clases
• módulos
• paquetes
• En el ejemplo anterior: altura, base, input
Identificadores en Python

• Usados para dar nombre a los diferentes objetos


que componen un programa:
• variables
• funciones
• clases
• módulos
• paquetes
• En el ejemplo anterior: altura, base, input
Sintaxis de los identificadores

• Definición: Un identificador es una secuencia de


caracteres alfanuméricos, el primero de los cuáles
debe ser alfabético.
• Gramática BNF (Backus/Naur Form):
Mayúsculas y Minúsculas

• Python es un lenguaje case sensitivo: distingue


mayúsculas de minúsculas
• Así por ejemplo, los identificadores casa, CASA,
Casa y cAsA son todos distintos.
• Lenguajes case insensitivos: Pascal, Basic, Fortran
• Lenguajes case sensitivos: C, Java, Perl, Python
Palabras reservadas

• También llamadas keywords


• Son ciertos identificadores cuyo uso se prohíbe
• Los utiliza el lenguaje con propósitos particulares
como parte de las instrucciones
• En el ejemplo anterior se utiliza la palabra
reservada print,
• Muchos editores colorean las palabras reservadas
(emacs, vim, gedit, kate, idle)
Palabras reservadas en Python
Memoria

• El programa anterior utilizará tres variables: altura,


base, area
• Una variable está formada por:
• un nombre (identificador)
• un valor
• un tipo
• El valor y el tipo de una variable puede cambiar en el
transcurso de un programa
• La memoria de un programa está constituida por el
conjunto de variables utilizadas
• Más adelante: Espacio de nombres
Instrucción de Asignación

• El valor de una variable puede ser modificado en el


transcurso del programa.
• La instrucción de asignación tiene esta forma:
• identificador = expresión
• Asigna el valor a la variable correspondiente
• Si ya tenía valor, se pierde (asignación destructiva)
• Si no tenía valor, la variable se crea con la asignación
(creación dinámica)
• El valor puede ser una expresión a ser evaluada
Instrucciones y Programas

• Un programa es una secuencia de instrucciones


• Dos tipos de instrucciones:
• simples: expresión, asignación, break, continue y otras
• compuestas: if, while, for y otras@
Ejemplos de asignaciones
Sintaxis de la Asignación
Asignación en cadena
Asignación en Paralelo
El Concepto de Tipo

• Los tipos permiten indicar la característica de los


valores (datos) manipulados en un programa.
• Toda variable tiene asociado un tipo.
• Esto ocurre también con los operadores y las
funciones.
• Poseer tipos permite detectar ciertos errores de
construcción en el código (chequeo de tipos).
• Por ejemplo:3 + 4 es correcto (integer)
• 3 / 'a' es incorrecto
• En Python el chequeo de tipos se hace en tiempo de
ejecución (tipado dinámico)
Tipos Numéricos

• Números enteros
• int números entre -2147483648 y 2147483647
• long no acotado
• boolean ({0,1})
• Números Reales
• float representados en punto flotante de doble
precisión
• Numeros Complejos
• complex
Literales y expresiones

• Cada tipo tiene su forma de literales (valores


constantes)
• Booleanos: True False
• Enteros: 14151234
• Reales: 14.03.12 0.1 .10
• Complejos: 4+3jcomplex(8.2,0.99)
• La expresiones se construyen con los operadores
habituales: + - * /
Expresiones Aritméticas

• Las expresiones más simples son las variables y


los literales.
• Las otras expresiones se construyen usando los
operadores + - * // / % **:
• Ejemplos de expresiones
• a (variable numérica)
• 12
• 13.4
• 4+2
• (a + 3) / x
• (a + 8) / (b + 2.0) * (c -3.5 -b)
Evaluando Expresiones en Python
Conversión implícita (coerción)

• Si en una expresión aparece al menos un


operando real, todo los otros operandos se
transforman a real.
• Si se quiere evaluar 4 + 5.3 se hace 4.0 + 5.3
• Esta transformación se llama coerción: un valor es
forzado a cambiar de tipo automáticamente.
• Python provee operadores de conversión
explícitos: float(), long(), bool(), int(), complex()
Tipo de una expresión

• El tipo de una expresión puede ser consultado


con el operador type()
Comparaciones

• Los operadores de comparación dan como


resultado un boolean, estos son:
< menor
<= menor o igual
> mayor
>= mayor o igual
<>, != distinto
== igual
• Se pueden encadenar: x < y <= z se interpreta
como (x < y) and (y <= z)
Ejemplos de comparaciones
Operadores booleanos

• Son operadores que permiten construir condiciones


compuestas
• Todos los números se interpretan como booleanos: el 0
es False y todos los demás son True
• Los operadores and y or se evalúan en modalidad
perezoza de izquierda a derecha
Precedencia y asociatividad de operadores

• or
• and
• not
• <, <=, >, >=, <>, !=, ==
• +, -
• /, //, %
• +x, -x, ~x
• **
• Operadores de igual precedencia asocian de
izquierda a derecha (excepto comparadores que
encadenan de izquierda a derecha)
Ejemplos

• not a < b or c <> x +1


• a = b + 2 * 3 and x <= 4 or b == 0
• not 3 + 4 < 8 != 3 * 6 + 2 and 8 > x
Cadenas de caracteres

• Las cadenas de caracteres (strings) se escriben


con comillas dobles o simples
Cadenas y líneas

• Existe un carácter especial: fin de línea


• Es un carácter de control que produce un cambio
de línea en la salida
• Se representa como \n
Continuación de cadena

• Una cadena se puede escribir en varias líneas sin


incluir fin de línea:
Comillas triples

• Las cadenas pueden encerrarse entre 3 comillas


simples o dobles.
• En ese caso se incluyen los fines de línea
Modo textual (raw)

• Si la cadena es precedida por el carácter r se


interpreta como raw string
• Se pueden escribir varias líneas pero se requiere
carácter de continuación
Concatenación y repetición

• Las cadenas permiten las operaciones de:


• concatenación: pegar dos cadenas, con el
operador +
• repetición: repetir muchas veces la misma
cadena, con el operador *
Concatenación de literales

• Dos cadenas literales consecutivas se concatenan


automáticamente
• Solo funciona con literales
Índices de cadenas

• Los caracteres de una cadena pueden obtenerse


utilizando la operación de indizado
• Se pueden obtener rebanadas(slices) utilizando
Inmutabilidad de las cadenas

• No es posible cambiar parcialmente una variable


cadena
Índices negativos

• Los índices negativos permiten contar desde el


final de la cadena
Esquema para rebanadas

• Un diagrama que ilustra como se comportan las


rebanadas:
• Los índices se asocian con bordes de las celdas
• La rebanada de i a j consiste de todos los caracteres
comprendidos entre los bordes i , j
Largo de una cadena
Subcadena
Programación Python

También podría gustarte