Tipos de Datos - Python

August 27, 2017 | Author: Luis Giovanny Carreño Ortiz | Category: Quotation Mark, Data Type, Bit, String (Computer Science), Python (Programming Language)
Share Embed Donate


Short Description

Download Tipos de Datos - Python...

Description

Tipos de datos – Python El tipo de un dato es el conjunto de valores que puede tomar durante el programa. Si se le intenta dar un valor fuera del conjunto se producirá un error. La asignación de tipos a los datos tiene dos objetivos principales: • •

Por un lado, detectar errores en las operaciones Por el otro, determinar cómo ejecutar estas operaciones

En Python se cuándo se almacenan datos en un variables, las operaciones que se pueden realizar con estas depende del tipo de dato que sean. Ejemplo: Si se sumas dos datos tipo numérico se obtendrá como resultado un dato numérico, pero si se suman dos datos tipo texto se obtendrá un resultado tipo texto. Numérico >>> 1 + 2 3 Texto >>> “1” + “2” ‘12’ En este ejemplo, podemos ver que se hizo dos veces lo mismo, pero la primera vez no se utilizó comillas y en la segunda sí. Esto ha hecho que python se dé cuenta de que tipos de datos se quieren manejar y los ha convertido automáticamente a los tipos correspondientes devolviendo el resultado correcto. Por esto es necesario conocer cuáles son los tipos de datos que python maneja y como tenemos que hacer nosotros para indicarle que tipo de datos queremos utilizar, así no corremos el riesgo de que python convierta equivocadamente nuestros datos a tipos que no queremos.



Tipos de datos principales

int Una variable de tipo integer o entero sólo puede guardar números enteros.Es decir sin coma.

Float Una variable de tipo float sólo puede almacenar números decimales. Tomar en cuenta que en python, los números decimales se escriben con punto en lugar de coma. Chr Una variable de tipo char sólo puede guardar un carácter. O sea, un símbolo tipográfico que puede ser una letra, un número, un espacio, una coma, etc. (Más adelante en este documento te quedará más claro que es un carácter). Str Una variable de tipo string o cadena sólo puede almacenar una cadena de caracteres, pueden ser letras y números, puntos, comas, espacios, etc. Bool Una variable booleana sólo puede guardar uno de los siguientes valores: True o False (verdadero o falso).



Manejo de los tipos de datos

Int >>> 1 1 Python convierte cualquier número sin coma en un entero en forma automática. >>> int(12.35) 12 De esta forma convertimos un número decimal en un entero. Vemos que en Python se utiliza el punto en lugar de la coma para escribir un número decimal. >>> int("325 . ") 325 Python puede convertir algunas cadenas de caracteres, (un texto), a entero.

Ejemplo de un error: >>> int("hola") Traceback (most recent call last): File "", line 1, in ValueError: invalid literal for int() with base 10: 'hola'

Float >>> 12.35 12.35 Python convierte cualquier número con coma en un float o decimal en forma automática. >>> float("325") 325.0 Python puede convertir algunas cadenas en un dato de tipo float. Ejemplo de un error:

>>> float("Hola") Traceback (most recent call last): File "", line 1, in ValueError: invalid literal for float(): Hola

Chr >>> chr(90) 'Z' En informática, un caracter o character, representa al código correspondiente a una de las teclas en el teclado de la computadora, por eso, nos imprime 'Z' ya que el caracter 90 del teclado es la letra Z. Para aclarar esta idea, podemos hacer: >>> chr(128) '\x80' El resultado es raro para nosotros, pero si hacemos: >>> print chr(128) ? Ahora vemos que el carácter 128 corresponde en el teclado al símbolo (?) Esto pasa porque siempre que utilizamos la función print de python para mostrar un dato en pantalla, este se ve obligado a convertir el dato en un tipo string o cadena de texto (un texto) para poder mostrarlo.

De modo que, un caracter es cualquier signo tipográfico, puede ser una letra, un número, un signo de puntuación, un espacio, etc. Nota: Para hacer lo contrario, utilizamos la función ord(), que a partir de un carácter, nos devuelve su código chr. >>> chr(90) 'Z' >>> ord("Z") 90

Str >>> str(150) '150' >>> str(150.25) '150.25' Un string es una cadena de caracteres, no es número. >>> str(1500) + " Km" '1500 Km' En este último ejemplo queda claro que str(1500) no es un número ya que no se puede sumar números más letras, las operaciones siempre se hacen entre datos del mismo tipo. El tipo de datos string es tan importante y utilizado en informática, que python cuenta con una clase especial para manejar cadenas de caracteres, más adelante trabajaremos con ella.

Bool >>> a = bool(1) >>> print a True

Para python, sólo 0 es False, todo lo demás es True. >>> a = bool("x") >>> print a True

Cualquier cosa que no esté vacía es True. >>> a = "hola que tal?" >>> b = bool(a) >>> print a hola que tal? >>> print b True

Cualquier cosa vacía es False. >>> a = "" >>> b = bool(a) >>> print a >>> print b False Ejemplo: >>> a = 90 >>> int(a) 90 >>> float(a) 90.0 >>> chr(a) 'Z' >>> str(a) '90' >>> bool(a) True



Operaciones con tipos de datos

En la sección anterior mostramos algunos tipos de datos que maneja Python junto con su forma de manejo y operación. Estas reglas establecidas dentro del lenguaje son esenciales para la estructura de un programa, ya que dentro de este se manejan muchas declaraciones de variables las cuales obedecen a cierto tipo de dato específico. Ahora veremos las operaciones, 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:

Aritméticos

Lógicos y Booleanos

Relacionales

Aplicación de los operadores El operador de módulo (%) no hace otra cosa que devolvernos el resto de la división entre los dos operandos. Ejemplo >>> 27 % 5 2 >>> 25 % 5 0

La diferencia entre división y división entera no es otra que la que indica su nombre. En la división el resultado que se devuelve es un número real, mientras que en la división entera el resultado que se devuelve es solo la parte entera. >>> 3.0 / 2.0 1.0 No obstante hay que tener en cuenta que si utilizamos dos operandos enteros, Python determinará que queremos que la variable resultado también sea un entero, por lo que el resultado. Ejemplo >>> 3 / 2 1 >>> 3 // 2 1.

Si quisiéramos obtener los decimales necesitaríamos que al menos uno de los operandos fuera un número real, bien indicando los decimales.

Operadores a nivel de bit Son poco utilizados estos operadores ya que estos operadores actúan sobre las representaciones en binario de los operandos. Por ejemplo: >>> 3 & 2 10 Lo que se muestra es un and bit a bit entre los números binarios 11 y 10 (las representaciones en binario de 3 y 2). El operador and (&), del inglés “y”, devuelve 1 si el primer bit operando es 1 y el segundo bit operando es 1, luego el resultado de aplicar and bit a bit a 11 y 10 sería 10, o lo que es lo mismo, 2 en decimal (el primer dígito es 1 para ambas cifras, mientras que el segundo es 1 sólo para una de ellas). El operador or (|), del inglés “o”, devuelve 1 si el primer operando es 1 o el segundo operando es 1 El operador xor u or exclusivo (^) devuelve 1 si uno de los operandos es 1 y el otro no lo es. El operador not (~), del inglés “no”, sirve para negar uno a uno cada bit; es decir, si el operando es 0, cambia a 1 y si es 1, cambia a 0. Por último los operadores de desplazamiento (>) sirven para desplazar los bits n posiciones hacia la izquierda o la derecha.

Operaciones con cadenas Las cadenas no son más que texto encerrado entre comillas simples (‘cadena’) o dobles (“cadena”). Dentro de las comillas se pueden añadir caracteres especiales escapándolos con ‘\’, como ‘\n’, el carácter de nueva línea, o ‘\t’, el de tabulación. Una cadena puede estar precedida por el carácter ‘u’ o el carácter ‘r’, los cuales indican, respectivamente, que se trata de una cadena que utiliza codificación Unicode y una cadena raw (del inglés, cruda). Las cadenas raw se distinguen de las normales en que los caracteres escapados mediante la barra invertida (\) no se sustituyen por sus contrapartidas. Esto es especialmente útil, por ejemplo, para las expresiones regulares. Ejemplo:

unicode = u"äóè" raw = r"\n"

También es posible encerrar una cadena entre triples comillas (simples o dobles). De esta forma podremos escribir el texto en varias líneas, y al imprimir la cadena, se respetarán los saltos de línea que introdujimos sin tener que recurrir al carácter \n, así como las comillas sin tener que escaparlas. Las cadenas también admiten operadores como la suma (concatenación de cadenas) y la multiplicación.

a = "uno" b = "dos"

c = a + b # c es "unodos" c = a * 3 # c es "unounouno"

BOOLEANOS El tipo booleano sólo puede tener dos valores: True (cierto) y False (falso). Estos valores son especialmente importantes para las expresiones condicionales y los bucles, como veremos más adelante. En realidad el tipo bool (el tipo de los booleanos) es una subclase del tipo int. Puede que esto no tenga mucho sentido para tí si no conoces los términos de la orientación a objetos, que veremos más adelantes, aunque tampoco es nada importante. Estos son los distintos tipos de operadores con los que podemos trabajar con valores booleanos, los llamados operadores lógicos o condicionales. Ejemplo: >>> True and True True >>> True and False False >>> False and true False >>> False and False False

Bibliografía

http://docs.python.org/library/functions.html http://docs.python.org/library/types.html http://es.wikipedia.org/wiki/Unicode Programación Python 3, Mark Summenrfield Python. Crear - Modificar - Reutilizar, Jim Knowlton Programming Python, Mark Lutz

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF