[go: up one dir, main page]

0% encontró este documento útil (0 votos)
22 vistas8 páginas

02 Python - Tema2 - Parte4 - v3 Apuntes

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 DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
22 vistas8 páginas

02 Python - Tema2 - Parte4 - v3 Apuntes

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 DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 8

IBM SkillsBuild | Introducción a Python

Conceptos básicos de
programación
Cuáles son los tipos de datos que
existen en programación
IBM SkillsBuild

| Introducción a Python

Índice
Introducción 3

Tipado débil 4

Lenguajes que lo usan 4

Tipado fuerte 5

Ventajas 5

Desventajas 5

Lenguajes que lo usan 5

Tipos de datos para variables 5

Tipo de datos número: int 6

Tipos de datos número real: double o float 6

Tipos de datos cadena: char o string 6

Tipo de datos booleano: boolean 6

Tipos de datos abstractos 7


IBM SkillsBuild | Introducción a Python

Por otro lado, el tipado fuerte no permite hacer


Introducción operaciones entre objetos de distintos tipos. No podemos
sumar una cadena y un entero. En cambio, en los
Se denomina dato a cualquier objeto manipulable por el
débilmente tipados sí.
ordenador. Un dato puede ser un carácter leído de un
teclado, información almacenada en un disco, un número
que se encuentra en la memoria central, etc. Los distintos
tipos de datos se representan en diferentes formas en el
ordenador: por ejemplo, no se almacena internamente de
la misma manera un número entero que un carácter.
Aunque los lenguajes de alto nivel permiten en alguna
medida ignorar la representación interna de los datos, es
preciso conocer algunos conceptos mínimos.

A nivel de máquina todos los datos se representan


utilizando una secuencia finita de bits. De este hecho ya se
deduce que no todos los datos son representables en un
ordenador. La definición de un tipo de dato incluye la
definición del conjunto de valores permitidos y las
operaciones que se pueden llevar a cabo sobre estos
valores. Cuando se utiliza un dato en un programa es
preciso que esté determinado su tipo para que el
traductor sepa cómo debe tratarlo y almacenarlo.

Dependiendo del lenguaje puede o no ser preciso declarar


expresamente en el programa el tipo de cada dato.

No todos los tipos de datos existen en todos los lenguajes


de programación. Hay lenguajes más ricos que otros en
este sentido.

Los tipos de datos en un lenguaje de programación pueden


ser muy variados, así que es difícil preguntarte cuantos
tipos de datos hay en un lenguaje, ya que incluso podemos
crear los nuestros propios, mediante enumeraciones o
estructuras.

En general todos los lenguajes de programación de alto


nivel trabajan con los mismos tipos de datos básicos. Si
bien es cierto que cambia la sintaxis y el modo de crear
variables dependiendo de si son de tipado débil o fuerte.

El tipado se refiere a cómo declaramos los tipos de


variables. Por ejemplo, algunas las declaramos como
enteras, algunas otras como cadena, flotantes, etcétera. Y
en algunos lenguajes, no necesitamos declarar el tipo,
pues éste se adivina.
IBM SkillsBuild | Introducción a Python

Código menos expresivo. Al declarar los argumentos


Tipado débil •
de una función no sabemos si ésta espera un flotante
(un número decimal), un entero, un string (cadena de
Lenguajes de programación de tipado débil son aquellos en
caracteres)…etc. Tenemos que ir a la función, ver lo
los que no indicamos el tipo de variable al declararla. Ya se
que hace e inferir el tipo de variable que espera.
encarga el propio lenguaje de “adivinar” de qué tipo es
• Inseguridad: existe la posibilidad de que un atacante
nuestra variable.
descubra una vulnerabilidad donde nosotros
La verdadera diferencia es que podemos asignar, por esperemos una variable de determinado tipo pero se
ejemplo, un valor entero a una variable que anteriormente reciba otra.
tenía una cadena. Más adelante veremos con detenimiento
los tipos de datos que existen.
Lenguajes que lo usan
También podemos operar aritméticamente con variables • PHP
de distintos tipos. Por ejemplo, sumar “x” + • Javascript
5.
Ejemplo:
Ventajas
Veamos lo que pasa en JavaScript cuando hacemos la
• Nos olvidamos de declarar el tipo siguiente operación:
• Podemos cambiar el tipo de la variable sobre la
marcha. Por ejemplo, asignarle un string a un int, es let resultado = "x" + 5;
decir, cambiar entre letras y números.
• Escribimos menos código
En un lenguaje fuertemente tipado daría un error, pero
Desventajas
en JavaScript no pasa nada:

• Al hacer operaciones, a veces éstas salen mal.


Por ejemplo, puede que intentemos sumar 500 +
“400.00” + 10, cosa que será errónea ya que al estar
“400.00” definido entre comillas, se considera un
string, es decir, una cadena de texto, no numérica.
Veremos este concepto más adelante.
• Hay que castear muchas veces. En ocasiones, Lo que hemos hecho en este ejemplo es crear una
tendremos que castear forzosamente las variables variable a la que hemos llamado “resultado” y le hemos
para que se comporten como queremos y no generen dado como valor la suma de “x+5”. En los lenguajes de
errores como los mencionados arriba. tipado fuerte esto habría dado un error, ya que no se
pueden sumar letras y números. En el caso de Javascript,
al ser un lenguajes de tipado débil, nos permite hacerlo.

Tipado fuerte
Nota: Hacer un casting consiste en cambiar
Aquí es en donde indicamos el tipo de dato al declarar la
forzosamente el tipo de una variable. Por ejemplo,
variable. Dicho tipo no puede ser cambiado nunca. Y no
diciéndole a nuestro programa que una variable cuyo
podemos operar entre distintos tipos. Es decir, si
valor es numérico esa tratada como alfanumérica, es
declaramos por ejemplo una variable como numérica, nuca
decir, como cadena de caracteres.
podremos meter dentro un dato que no sea numérico.
IBM SkillsBuild | Introducción a Python

Ventajas Si estamos con textos, podemos comparar (si son iguales o


no), podemos sustituir parte del texto, añadir texto a uno
• Código expresivo: ahora sí sabremos de qué tipo
existente, etc.
espera un argumento una función.
• Menos errores: Nos olvidaremos de ver el tipo de Con fechas podemos también sumar o restar fechas (o
variable antes de hacer operaciones con ésta. días, meses, años), compararlas, etc.

Desventajas
• Escribir más código: tenemos que especificar el tipo de
Tipos de datos para variables
variable al declararla.

Cada lenguaje de programación puede trabajar con


muchos tipos de datos.
Lenguajes que lo usan
Por mencionar algunos… Pero de todos ellos, siempre tendremos los tipos
primitivos de datos.
• C
• C# Éstos están incorporados al lenguaje de programación, y
• Java nos sirve para poder hacer cosas más complicadas.
• Ruby
Vamos a hablar de los tipos de datos más comunes, que
• Python
nos podemos encontrar en la mayoría de los lenguajes de

Ejemplo programación, como puede ser Java, C o C++.

Intentemos realizar la operación de “x” + 5 en Python, y Tipo de datos número: int


veamos lo que pasa: Los números suelen ser representados en un lenguaje de
programación de maneras diferentes, ya que importa
decidir una serie de cuestiones:

• Cual va ser el tamaño que vamos a usar.


• Si va a tener números decimales o no.
• Si va ser negativo.

Nos está lanzando un error en el que nos especifica que no Empezaremos con el tipo primitivo int. Este tipo de datos
se pueden sumar caracteres alfanuméricos y números. representa cualquier número sin decimales, ya sea
positivo o negativo.
En general, los lenguajes de tipado fuerte son más seguros,
pues no permiten hacer operaciones con variables de Aunque es habitual encontrarlo escrito en el código fuente
distintos tipos. como int, hay otros lenguajes, como visual basic, que se
escribe integer.
Ponemos tres ejemplos de tipos de datos básicos que son
los más utilizados: los números, los textos y las fechas.
Tipos de datos número real:
Si estamos trabajando con números, podemos sumar,
restar, multiplicar, dividir… y muchas operaciones más, double o float
como comparar. Si nos interesa utilizar un número con decimales, solemos
encontrar el tipo de datos double o float.
IBM SkillsBuild | Introducción a Python

A esto lo llamamos un número de punto flotante.


Declararlo como un tipo u otro dependerá de la
precisión en decimales que quieras tener. Los float se
usan para números no muy grandes con decimales y el
tipo double para números muy grandes con
decimales.

¿Como podemos distinguir una variable si se ha declarado Tipo de datos booleano: boolean
como int o como float? Por ejemplo, si nos
Los valores lógicos son representados por el tipo primitivo
encontramos un número con un punto decimal (3.14), se
boolean. Representa si una condición se cumple o no se
deduce que es de tipo float. Aunque podemos definir un
cumple.
número sin decimales como float, con lo que el programa
le añadirá los decimales. Por ejemplo, si definimos una Suelen tener dos valores identificados, true
variable como float y le damos el valor de 456, nuestro (verdadero) o false (falso). En algunos lenguajes
programa la leerá como 456.00 puede equivaler a los números 0 y 1.

También puedes ver un número con la letra F o con la letra Una variable puede usarse para representar cualquiera de
D, para distinguir si es un float o un double. Por los dos valores.
ejemplo 3.56F.

Tipos de datos cadena: char o string


Suele ser un valor alfanumérico. Si es un sólo carácter
individual, tenemos el tipo char.

Un char es un carácter Unicode, y solemos escribirlo


entre comillas simples (‘ ‘).

Pero si es una cadena de caracteres, es decir, caracteres


seguidos unos detrás de otro formando una secuencia
(una palabra o una frase), lo solemos encontrar como
string.

El tipo string debemos escribirlo entre comillas dobles (“


”) para diferenciarlo del char, aunque puede ser
diferente, dependiendo del lenguaje de programación.

En el siguiente código veremos un uso del tipo de datos


string:

miVariable = "Hola Mundo";

Hemos declarado una variable en la que le hemos


introducido como valor la frase “Hola mundo”, por lo que
dicha variable es de tipo string.
IBM SkillsBuild

| Introducción a Python

Por ejemplo, podríamos hablar de verdadero o falso, encendido o


apagado, activo o no activo…etc.

Tipos de datos abstractos


Ahora que ya conocemos los tipos de datos primitivos,
podemos saber que significa tipos de datos
abstractos.

Los tipos de datos en programación orientada a objetos


suelen ser los básicos que hemos visto antes, pero
podemos encontrarnos con tipos de datos que sean clases
u objetos. Esto se verá con profundidad cuando tratemos la
programación orientada a objetos.

Los tipos de datos abstractos aumentan y extienden la


complejidad, ya que tiene un conjunto de valores y unas
operaciones asociadas a ellos.

Luego entraríamos en que estos datos están


encapsulados, en la herencia para aprovechar mejor las
operaciones que hemos codificado y el polimorfismo,
pero esos son conceptos que serán explicados más
adelante.
IBM SkillsBuild

También podría gustarte