Tipos de Datos de python (2ª parte):

Documentos relacionados
Estructuras de control: Las variables: Fuertemente tipado: Tipado dinámico: Variables booleanas: Qué son las estructuras de control?

PYTHON. Programación estructurada

INTRODUCCIÓN A LA PROGRAMACIÓN. 1º Bachillerato

Palabras reservadas de C++ y C. Una palabra reservada no puede declararse como un identificador, esto haría un conflicto entre conectores y funciones.

introducción a la computación

Métodos con Parámetros

Tema: Estructuras de Selección en C#.

Estructuras de control Agosto de Facultad de Ingeniería. Universidad del Valle

Operadores aritméticos

Expresiones y Operadores

Control de Flujo. Estructuras de Control! Experiencia Educativa de Algorítmica CONTROL DE FLUJO

Tema 3. Estructuras de Datos

ESTRUCTURAS DE CONTROL

Sentencias de control de flujo

PHP: Lenguaje de programación

Clase 2: El Lenguaje Python

Introducción a Python. Cecilia Manzino

JavaScript: Lenguaje de programación

Informática. JavaScript: Lenguaje de programación. Fco J. Martín Mateos Carmen Graciani

Un calculadora avanzada... y algo más!

Operadores. Java es un lenguaje rico en operadores, que son casi idénticos a los de C/C++.

Control de Flujo. Estructuras de Control! Experiencia Educativa de Algorítmica CONTROL DE FLUJO

SESIÓN DE EJERCICIOS E1

Programar en TortuBots

Programcaión Básica. Secuencias de Control y Repetición. Arturo Vega González.

Tema: Estructuras de Selección en C#.

Programación en Python

Tema: Estructuras de Selección en C#.

Estructura de un programa en Java. Tipos de datos básicos. class miprimerprograma{ // comentario, no es parte del programa

Dobles: Es el caso de la instrucción if-else (punto 1.2).

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

goto goto Código Spague-

Estructuras de Control Selección o Decisión

Introducción a la Programación IV. Estructuras de Control. Orden de ejecución. Transferencia de Control. Transferencia de Control II 12/3/10

Tema 4. Control de flujo. Programación Programación - Tema 4: Control de Flujo

Tema 3. Estructuras de control

GUÍA DE TRABAJO N 1 C# Ing. Néstor Raúl Suarez Perpiñan Página 1 de 13

Programación Web Tema 3.2 Java Script Estructura del Lenguaje. Ramón Alcarria ETSI en Topografía, Geodesia y Cartografía - UPM

Lección 3 Sentencias de control

JavaScript Básico. Elementos Básicos: Comentarios: Literales: Valores que puede tomar una variable o una constante.

PYTHON. Programación básica

Curso de Java Introducción a la Programación III

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

FUNDAMENTOS DE INFORMÁTICA

Programación.Net Lenguaje C#

NOCIONES BASICAS DE Miguel Iván Bobadilla

Ciclos. Recordando Estructuras de Control Básicas: SELECCIÓN (condición) SECUENCIAL

Primeros pasos programando en Python

TEMA 5. ESTRUCTURAS DE CONTROL: BUCLES.

Introducción a los Computadores ITTELSI. Curso

Programación Estructurada

Introducción a la programación. Proyecto de Robótica Educativa

GLOSARIO 1. Qué es bit y byte? Bit: Es la unidad mínima de información. Puede ser 0 o 1. Byte: Es el conjunto de 8 bits. Ejemplo:

Tema 2. El lenguaje JAVA

Introducción a Java. Introducción a Java. Programación I

Estructuras de Control (y su forma en Python y en C) Clase 5 Introducción a la Computación Patricia Borensztejn

Bloque 3. Expresiones, sentencias y estructuras de control

Paradigmas de lenguajes de programación. Introducción a la programación imperativa. Lenguaje C. Programación imperativa

Estructuras de Repetición: Repita Mientras.

Algoritmo, Estructuras y Programación I Ing. Marglorie Colina

Estructura repetitiva while

Escuela Normal Superior N 40 Mariano Moreno. Cuadernillo Propedéutico 2017 Nivel Superior

Clase 2: Tipos de Datos y Condiciones. Profesora de Cátedra: Jocelyn Simmonds

Fundamentos de Programación

Programación en Mathematica

$0 Representa al parámetro cero o nombre del programa $1 Representa al parámetro uno $2 Representa al parámetro dos

Objetivos de la práctica: - Trabajar las estructuras de control repetitivas en la realización de programas.

Programación Estructurada en ANSI C

SESIÓN DE EJERCICIOS E1

ING1310 Introducción a la Computación. Python. Conceptos Básicos. Carlos Reveco

ESTRUCTURAS REPETITIVAS EN PHP

Operadores de comparación

Sentencias iterativas

Estructuras Repetitivas

Taller de programación shell

Introducción a Python Qué es Python?

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

La resolución de problemas es una tarea únicamente humana comprobable en todos los casos con los mismos resultados.

Conceptos. Generales ALGORITMOS

TEMA 4: Programación estructurada

Programación en Lenguaje C

JavaScript: Estructuras de control de flujo

El lenguaje C. 1. Identificadores, constantes y variables

Programación Estructurada

Programación: Estructuras de Control

Repaso Lenguaje C Área de Servicios Programación (Ing. Elect. y Prof. Tec.), Programación I (TUG y TUR) y Electrónica programable (TUE)

Operadores de comparación

La forma general que tiene un condicional (una pregunta) es la siguiente:

TAREA 4. En este problema usted tiene la posibilidad de prácticar escribiendo algunos ciclos for

EXPRESIONES Y OPERADORES

TEMA 4: Estructuras de Control

Lógica de programación

Unidad 4. Estructuras de control Tema. Estructuras de Iteración (do-while)

Programación Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC.

4- Introducción a PHP

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.

21/03/2018. Variables y Constantes. Los datos de un programa están representados por variables o constantes y tienen asociado un tipo.

Autor: Ing. Nahuel González INTRODUCCIÓN A C. Clase 1

Guía práctica de estudio 05: Estructuras de selección

Introducción rápida a la programación (estructurada ) con C++

Transcripción:

Tipos de Datos de python (2ª parte): Enteriormente hemos visto algunos de los tipos de datos que maneja python. Vimos: int, float, chr, str, bool También vimos como convertir datos a cada uno de estos tipos específicos. Para esto, hemos utilizado funciones propias de python. Vimos: int(), float(), chr(), str(), bool(), ord() En los ejemplos realizados en el taller y en las prácticas que hemos realizado, hemos usado también otras funciones propias de python, que sirven para hacer otras cosas. Hemos utilizado: print() (para imprimir datos en la pantalla), raw_input() (para ingresar datos con el teclado). También hemos utilizado variables para almacenar nuestros datos y hemos realizado operaciones con ellos. Para realizar operaciones, hemos utilizado operadores. Los operadores que hemos utilizado, dependen del tipo de operación a realizar con los datos. Si vamos a hacer operaciones matemáticas, los operadores son: + suma - resta / división * multiplicación Si vamos a realizar comparaciones entre datos, utilizamos los operadores de comparación. Ellos son: == igual que!= no igual (o distinto que) < menor que > mayor que <= menor o igual que >= mayor o igual que Repartido Nº 2. Tipos de Datos de python y conversiones entre tipos. Pág: 1

Cuando comparamos datos, también utilizamos operadores lógicos. Ellos son: and y or o not no Para aclarar esto, veamos el siguiente ejemplo: Supongamos que en un programa deseo hacer la siquiente prueba lógica: En seudocódigo: Si naciste en San José, eres uruguayo. En python: if naciste == San José : print Sos Uruguayo Según este ejemplo, sólo hacemos una comparación, esta comparación es ver donde naciste y si naciste en san josé eres uruguayo porque si la condición if naciste == San José : se cumple, se devuelve True (la prueba lógica da verdadero) y se ejecuta lo que hay dentro del bloque if. Ahora bien, podríamos mejorar el código ampliándolo, por ejemplo a los nacidos en colonia, de la siguiente manera: En seudocódigo: Si naciste en San José o en Colonia, eres uruguayo. En python: if naciste == San José or naciste == Colonia : print Sos Uruguayo Ahora, estamos haciendo 2 comparaciones en una misma prueba lógica. Probamos si naciste en San José o en Colonia y si naciste en uno de los dos lugares, eres Uruguayo. El operador lógico or sirve para enlazar las dos comparaciones en la misma prueba lógica de la sentencia if. Ahora, la sentencia if naciste == San José or naciste == Colonia : (que es la prueba lógica), devolverá True siempre que al menos una de las dos comparaciones que la forman se cumpla. En el caso del operador lógico and, toda la sentencia if devolverá True en caso de que las dos comparaciones de la prueba se cumplan y not es una negación, por lo cual, devolverá True cuando no se Repartido Nº 2. Tipos de Datos de python y conversiones entre tipos. Pág: 2

cumpla una prueba. Para aclarar mejor el not, retomamos el primer ejemplo y lo modificamos para hacer lo contrario: En seudocódigo: Si no naciste en San José, no eres maragato. En python: if not naciste == San José : print No sos Maragato Este código imprimirá No sos Maragato siempre que naciste no sea igual a San José, porque not invierte el valor de la comparación para toda la prueba lógica, o sea, si naciste es igual a San José, la comparación es verdadera, pero al poner not delante, el valor de la prueba lógica se invierte. Esto debiera aclarar la diferencia entre una comparación y la prueba lógica que puede tener varias comparaciones. Verificación de ejemplo anterior: >>> naciste = "Montevideo" >>> if not naciste=="san Jose":... print "No sos Maragato"... No sos Maragato Control de Flujo: Si un programa no fuera más que una lista de órdenes a ejecutar una tras otra (de forma secuencial), no tendría mucha utilidad. Por eso, existen formas de probar condiciones y valores durante la ejecución de nuestro programa para decidir que partes de código queremos ejecutar. Estas formas nos permiten controlar como fluye nuestro programa e incluso hasta cuando se ejecuta, son las llamadas sentencias de control de flujo. Ellas son: Condicionales, bucles e iteradores. Sentencias condicionales: Los condicionales nos permiten comprobar condiciones y hacer que nuestro programa se comporte de una forma u otra, que ejecute un fragmento de código u otro, dependiendo de estas condiciones. Aquí es donde cobra importancia el tipo de datos booleano y los operadores lógicos y relacionales que aprendimos. Repartido Nº 2. Tipos de Datos de python y conversiones entre tipos. Pág: 3

if condición: Codigo a ejecutar La forma más elemental de un condicional es el if donde se evalúa una condición y si dicha condición se cumple, se ejecuta el código que se encuentra dentro de bloque. Una estructura condicional más completa es if else: if condición: Codigo a ejecutar si se cumple la condición else: Código a ejecutar si no se cumple la condición La estructura anterior nos viene muy bien si queremos ejecutar un código cuando se cumple la condición y otro código distinto si no se cumple esa condición, pero si queremos evaluar más de 2 posibles valores para la condición, debemos utilizar una estructura condicional mas completa, if elif elif else: if numero < 0: print "Negativo" elif numero > 0: print "Positivo" else: print "Cero" En este código, primero se evalúa la condición del if. Si es cierta, se ejecuta su código y se continúa ejecutando el código posterior al condicional; si no se cumple, se evalúa la condición del elif. Si se cumple la condición del elif se ejecuta su código y se continua ejecutando el código posterior al condicional; si no se cumple y hay más elifs se continúa con el siguiente elif en orden de aparición. Si no se cumple la condición del if ni de ninguno de los elif, se ejecuta el código del else. Repartido Nº 2. Tipos de Datos de python y conversiones entre tipos. Pág: 4

Nota: También existe una construcción similar al operador? de otros lenguajes, que no es más que una forma compacta de expresar un if else. var = "par" if (num % 2 == 0) else "impar" En este código se evalúa lo que hay dentro de if() y si esta condición se cumple, se devuelve par, si no se cumple se devuelve impar que se encuentra en else. Bucles: Mientras que los condicionales nos permiten ejecutar distintos fragmentos de código dependiendo de ciertas condiciones, los bucles nos permiten ejecutar un mismo fragmento de código un cierto número de veces, mientras se cumpla una determinada condición. El bucle while (mientras) ejecuta un fragmento de código mientras se cumpla una condición. edad = 0 while edad < 18: edad = edad + 1 print "Felicidades, tienes " + str(edad) Por ejemplo, veamos un pequeño programa que repite todo lo que el usuario escriba hasta que escriba adios. entrada = "" while entrada!= "adios": entrada = raw_input("> ") print entrada Para romper un bucle, también podemos utilizar la palabra clave break: while True: entrada = raw_input("> ") if entrada == "adios": break else: print entrada La palabra clave break (romper) sale del bucle en el que estamos. Repartido Nº 2. Tipos de Datos de python y conversiones entre tipos. Pág: 5

Otra palabra clave que nos podemos encontrar dentro de un bucle es continue: edad = 0 while edad < 18: edad = edad + 1 if edad < 18: continue print "Felicidades, tienes " + str(edad) Como ven, continue no hace otra cosa que pasar directamente a la siguiente iteración del bucle, por lo cual, en este código solo se imprimirá felicitaciones al cumplir 18 años. Iteradores: for se utilizan en Python para recorrer secuencias de valores. for x in range(1,10): print x range es una función de python para especificar un rango de valores, in quiere decir en. En este caso se especifica un rango de números del 1 al 10. Este código, en seudocódigo se leería así: para x igual a cada número en un rango de 1 a 10: imprimir el valor de x Un buen sitio para aprender sobre estos temas: http://www.mclibre.org/consultar/python/ Repartido Nº 2. Tipos de Datos de python y conversiones entre tipos. Pág: 6