Avisar de contenido inadecuado

Python: Tipos Basicos y Operadores

{
}

Ya hacia tiempo que no posteaba, tenia un proyecto que entregar y el tiempo apremiaba, ahora más relajado, volvemos a la carga.

Hay tantas cosas que compartir que no se exactamente por donde empezar, así que tras darle muchas vueltas, he decidido publicar unas guías, curso o apuntes, llámese como se quiera, sobre PYTHON.

Python es un lenguaje de programación relativamente joven, creado por Guido van Rossum en los años 90 y según las malas lenguas, creado en un momento de aburrimiento (vaya pasatiempo), con las siguientes características.

  • Es un lenguaje interpretado.

  • Tipado dinámico.

  • Multiplataforma

  • orientado a objetos.

  • Permite varios estilos de programación:

  • orientada a objetos.

  • programación estructurada.

  • programación funcional.

Doy por echo que todo el mundo tiene instalado el python, probar escribiendo python en la consola, si lo tienes instalado el prompt te saldrá algo parecido a esto.

python2

Hemos entrado en el interprete de python, con Ctrl+D volveremos a la consola.

Con esto es más que suficiente para seguir el curso, al menos hasta que toquemos las interficies gráficas, de todas formas yo aconsejo que instaléis un par de paquetes más, que nos harán la vida un poco más fácil.

Sudo aptitude install python-wxtools python-opengl ipython

Hemos instalado dos interpretes más, para verlos teclear en consola:

  • ipython

  • pycrust o pyshell

     

Quedaros con el que más os guste.

Tipos Básicos

Podemos resumirlos en tres tipos Numéricos, texto y booleanos.

Los datos numéricos los podemos dividir a su vez en tres tipos más:

  • Enteros: números positivos o negativos sin decimales.

    3, -2, 5, 110000, 45L, etc.

  • Coma flotante o reales: números positivos o negativos con decimales.

    3.555, -3.0, -6666.7, 0.1e-3, etc

  • Complejos: son los que tienen parte imaginaria, si no sabes cuales son no te preocupes mucho, posiblemente no te hagan falta nunca.

    3+4j, (2+j)

Las cadenas (texto) van encerradas entre comillas simples o dobles, y pueden utilizar la codificación unicode o raw (esto ya lo veremos más adelante).

“una cadena”, u”texto unicode”, r”texto raw”, 'hola', etc.

Como podéis preceder una cadena de 'u' o de 'r', la hace utilizar una codificación o otra.

El texto también puede ir encerrado entre triples comillas, esto permite añadir a saltos de línea.

python1

 

Los Booleanos, estos son tan faciles como útiles, solo aceptan dos valores

  • True

  • False

Operadores aritméticos

Suma: +

Esta operación requiere poca explicación, todo el mundo sabe lo que hace, pero añadiremos un par de comentarios, queremos empezar a hacer bien las cosas y siguiendo el espíritu de python, como una buena costumbre o como norma si lo preferís, siempre dejaremos un espacio entre el operador y los datos.

3 + 2 = 5, (3+2j) + (1+5j) = (4+7j), 4.67 + 67.3=71.70, 1 + 23.45=24.45

En las cadenas de texto la suma significa concatenación

hola” + “adios” = “holaadios”, “Juan“ + “, “ + “Pedro” = “Juan, Pedro”

Veamos esto en la consola.

Resta: -

Tampoco merece que perdamos el tiempo con este operador que todos sabemos como funciona. Solo destacar que no existe esta operación en los datos tipo texto.

3 – 2 = 1, -3 – 4 = -7, (3+2j) - (1+5j) = (2-3j)

Multiplicación: *

3 * 2 = 6, -3 * -2 = 6

En las cadenas tiene otro comportamiento. Aquí lo que hace és repetirlas.

>>> nom = “Juan”

>>> cincoJuanes = nom * 5

>>> print cincoJuanes

JuanJuanJuanJuanJuan

>>> letra = 'a'

>>> print letra * 3

aaa

División: /

Tenemos dos tipos de divisiones, La división i la división Entera. La diferencia esta en que la primera el resultado que devuelve es del tipo real, en el segundo es del tipo entero.

División

>>> (3+2j) / (1+5j)

(0.5-0.5j)

>>> print 3 / -2.4

-1.25

>>> print 2.4 / 3.4

0.70588235294117652

División entera

>>> 2.4 // 1

2

>>> 7 // 2

3

>>> 8 // 4

2

En los ejemplos hemos omitido algo, fijaros en esto.

>>> 7 / 2

3

Que ha pasado? Pues sencillo, python ha detectado la división entre dos enteros, por lo tanto supone que el resultado tiene que ser del mismo tipo. Para evitar este comportamiento actuaremos de la siguiente forma.

>>> 7.0 / 2

3.5

>>> float(7) / 2

3.5

Exponente: **

Eleva un número a una potencia.

>>> print 5 ** 2

25

>>> (1-4j) ** 2

(-15-8j)

>>> b = 4 ** 5

>>> print b

1024

Módulo: %

Nos devuelve el resto de una división.

>>> 7 % 3 # devuelve 1

>>> 10 % 2 # devuelve 0

 

Operadores a nivel de bit

Este tipo de operadores es muy importante, aunque en los inicios de la programación se suelen omitir, tal como se coge experiencia se le encuentran miles de usos que nos facilitan enormemente la vida.

Estamos acostumbrados a operar con números en base 10 ( dígitos del 0 al 9), el sistema binario opera en base 2 (dígitos 0 y 1), en definitiva una secuencia de 0 y 1, los cuales cogen un valor según la posición en la que se encuentran. Cada 0 o 1 es lo que llamamos bit, y es sobre estos bits sobre los que actúan los operadores de esta sección.

AND: &

1 si los dos operadores son 1, 0 en caso contrario.

>>> 3 & 2 # 011 & 010 = 010

2

>>> 2 & 1 # 010 & 001 = 000

0

>>> 7 & 2 # 111 & 010 = 010

2

 

OR: |

devuelve 1 si cualquiera de los dos bits es 1, así devolver 0 solo si los dos son 0.

>>> 3 | 2 # 011 | 010 = 011

3

>>> 2 | 1 # 010 | 001 = 011

3

>>> 7 | 2 # 111 | 010 = 111

7

 

XOR: ^

devuelve 1 solo si únicamente uno de los dos bits es 1, en cualquier otro caso devuelve 0.

>>> 3 ^ 2 # 011 ^ 010 = 001

1

>>> 2 ^ 1 # 010 ^ 001 = 011

3

>>> 7 ^ 2 # 111 ^ 010 = 101

5

 

NOT: ~

Invierte o niega el valor del bit, si es 0 lo vuelve 1 y si es 1 lo vuelve 0.

>>> ~ 2 # ~ 010 = 101

5

>>> ~ 1 # ~ 001 = 110

6

>>> ~ 7 # ~ 111 = 000

0

 

Desplazamiento: << o >>

Desplaza los bits rellenando con 0, a la derecha o la izquierda según el operador utilizado. Cada desplazamiento multiplica o divide el número por 2.

>>> 2 << 2 # 010 << 2 = 01000

8

>>> 4 << 1 # 100 << 1 = 1000

8

>>> 7 << 3 # 111 << 3 = 111000

56

>>> 2 >> 2 # 010 >> 2 = 000

5

>>> 4 >> 1 # 100 = 010

2

>>> 7 >> 3 # 111 >> 3 = 000

0

 

Operaciones Booleanas.

 

Un tipo booleano solo puede tener dos valores, True y False. Algunas de las operaciones utilizadas pueden parecerse a las operaciones que hemos visto en la sección anterior, aunque nada más lejano.

Pare esta sección tendremos dos expresiones cualquiera de tipo boolean que llamaremos a y b.

AND:

True si a y b son True, en cualquier otro caso Falso.

>>> True and True # es True

>>> True and False # es False

>>> False and True # es False

>>> False and False # es False

 

OR:

True si a o b es True, solo sera False cuando a y b sean los dos False.

>>> True and True # es True

>>> True and False # es True

>>> False and True # es True

>>> False and False # es False

 

NOT:

Invierte el valor.

>>> not True # es False

>>> not False # es True

>>> not not True # es True

 

Un valor booleano puede ser el resultado de una expresión.

>>> a == b # True si a y b son iguales

>>> a != b # True si a es distinto de b

>>> a < b # True si a es menor que b

>>> a > b # True si a es mayor que b

>>> a <= b # True si a es menor o igual que b

>>> a >= b # True si a es mayor o igual que b

>>> 4 == 5 # False

>>> 3 > 2 # True

>>> “a” == “a” # True

{
}
{
}

Deja tu comentario Python: Tipos Basicos y Operadores

Identifícate en OboLog, o crea tu blog gratis si aún no estás registrado.

Avatar Tu nombre