Primeros pasos con Python 3

Primeros pasos con Python 3

Python

Python es un lenguaje de programación que se encuentra en la versión 3.8.1 a fecha febrero de 2020.

1. Introducción

Se dice que el nombre del lenguaje se debe a un programa emitido por la televisión británica llamado Monty Python Flying Circus. Fue creado por Guido Van Rossum en el año 1991.

Python es un lenguaje de programación de alto nivel, interactivo e interpretado, de código abierto y multi-plataforma. También es Case sensitive, es decir, distingue mayúsculas de minúsculas.

La versión 3 ha sido lanzada en el año 2009, e implementa modificaciones que lo hacen incompatible con la versión 2. Desde el año 2020 se espera que finalize el soporte y lanzamiento de mejoras para la versión 2.

Es administrado por la Python Software Foundation. Posee una licencia de código abierto, denominada Python Software Foundation License.

Más información: https://www.w3schools.com/python/

2. Instalación

2.1 Instalar Python en Windows 10

2.1.1 Descargar

Url de descarga: https://www.python.org/downloads/windows/

2.1.2 Instalar

Elegiremos instalación manual para poder escoger el directorio de instalación. Crearemos uno nuevo en C: y lo instalaremos en ese directorio.

2.1.3 Añadir al path

En este caso, la ruta de instalción es: C:\Python3.

Nos dirigimos a Equipo, botón derecho, Propiedades. Seguidamente, en el menú de la izquierda, iremos a Configuración avanzada del sistema y Variables de entorno.

En Variables de sistema, seleccionamos Path y Editar.

Creamos una nueva entrada y pegamos nuestra ruta.

Aceptamos en todas las ventanas y salimos. Si tenemos un cmd abierto, debemos cerrarlo y volver a abrirlo.

2.1.4 Comprobar

Abrimos un cmd, escribimos python y se debería abrir el intérprete:

2.2 Instalar Python en Ubuntu

Desde la terminal, con permisos de superusuario ejecutar los siguientes comandos.

sudo apt-get update
sudo apt-get install python3.6

Comprobar si se ha instalado correctamente:

python3 --version

Ejecutar un fichero

python3 hola-mundo.py

3. Introducción

3.1 Ver versión de Python

import sys
print(sys.version)

3.2 Hola Mundo

print("Hola Mundo");

4. Tipos de datos

Python cuenta con los siguientes tipos de datos

Text: str

Numeric: int, float, complex

Sequence: list, tuple, range

Mapping: dict

Set: set, frozenset

Boolean: bool

Binary: bytes, bytearray, memoryview

4.1 Conocer el tipo

x = 5
print(type(x))

Retorna:

<class 'int'> 

4.2 Especificar el tipo de dato

Tipo de datoEjemplo
strx = str(«Hello World»)
intx = int(20)
floatx = float(20.5)
complexx = complex(1j)
listx = list((«apple», «banana», «cherry»))
tuplex = tuple((«apple», «banana», «cherry»))
rangex = range(6)
dictx = dict(name=»John», age=36)
setx = set((«apple», «banana», «cherry»))
frozensetx = frozenset((«apple», «banana», «cherry»))
boolx = bool(5)
bytesx = bytes(5)
bytearrayx = bytearray(5)
memoryviewx = memoryview(bytes(5))

4.3 Casting

Integer

x = int(1)   # x will be 1
y = int(2.8) # y will be 2
z = int("3") # z will be 3

Float

x = float(1)     # x will be 1.0
y = float(2.8)   # y will be 2.8
z = float("3")   # z will be 3.0
w = float("4.2") # w will be 4.2

String

x = str("s1") # x will be 's1'
y = str(2)    # y will be '2'
z = str(3.0)  # z will be '3.0' 

5. Strings

Definir un string multilínea

a = '''Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua.'''
print(a) 

Recorrer las letras de un string

for x in "banana":
  print(x)

Tamaño de un string

a = "Hello, World!"
print(len(a))

Comprobar si un string está en otro

txt = "The best things in life are free!"
print("free" in txt)

También utilizando if

txt = "The best things in life are free!"
if "free" in txt:
  print("Yes, 'free' is present.")

Comprobar si un string no está en otro

txt = "The best things in life are free!"
print("expensive" not in txt)

También utilizando if

txt = "The best things in life are free!"
if "expensive" not in txt:
  print("Yes, 'expensive' is NOT present.")

Cortar un string entre dos índices

b = "Hello, World!"
print(b[2:5]) #llo

Cortar un string desde el inicio

b = "Hello, World!"
print(b[:5]) #Hello

Cortar un string desde el final

b = "Hello, World!"
print(b[2:]) #llo, World! 

Cortar un string utilizando índices negativos

b = "Hello, World!"
print(b[-5:-2]) #orl 

Pasar a mayúsculas

a = "Hello, World!"
print(a.upper())

Pasar a minúsculas

a = "Hello, World!"
print(a.lower())

Eliminar espacios en e inicio o en el final

a = " Hello, World! "
print(a.strip()) # returns "Hello, World!" 

Reemplazar cadena

a = "Hello, World!"
print(a.replace("H", "J"))

Convertir cadena en lista

a = "Hello, World!"
print(a.split(",")) # returns ['Hello', ' World!']

Concatenar cadenas

a = "Hello"
b = "World"
c = a + b
print(c)

Función format() para concatenar cadenas y números

age = 36
txt = "My name is John, and I am {}"
print(txt.format(age))

Esta función tiene un número ilimitado de argumentos

quantity = 3
itemno = 567
price = 49.95
myorder = "I want {} pieces of item {} for {} dollars."
print(myorder.format(quantity, itemno, price))

Podemos utilizar el índice del argumento para asegurarnos que se situa en el lugar correcto

quantity = 3
itemno = 567
price = 49.95
myorder = "I want to pay {2} dollars for {0} pieces of item {1}."
print(myorder.format(quantity, itemno, price))

Más información: https://www.w3schools.com/python/python_ref_string.asp

6. Booleans

Ejemplos

print(bool("Hello")) #True
print(bool(15)) #True
print(bool(0)) #False
print(bool(-1)) #True
print(bool("-1")) #True
print(bool(["apple", "cherry", "banana"])) #True
print(bool("")) #False
print(bool(False)) #False
print(bool(None)) #False
print(bool(0)) #False
print(bool(())) #False
print(bool([])) #False
print(bool({})) #False

Ejemplo en resultado de un método

class myclass():
  def __len__(self):
    return 0

myobj = myclass()
print(bool(myobj)) #False

Comprobar si un objecto es integer o no

x = 200
print(isinstance(x, int)) #True

x = "200"
print(isinstance(x, int)) #False

7. Operadores

7.1 Suma

x = 5
y = 3
print(x + y) #8

7.2 Resta

x = 5
y = 3
print(x - y) #2

7.3 Multiplicación

x = 5
y = 3
print(x * y) #15

7.4 División

x = 12
y = 5
print(x / y) #2.4

7.5 Módulo

x = 5
y = 2
print(x % y) #1

7.6 Exponencial

x = 2
y = 5
print(x ** y) #32 (Sería: 2*2*2*2*2)

7.7 División redondeada

x = 15
y = 2
print(x // y) #7

7.8 Operadores de comparación

== es igual

!= no es igual

> mayor que

< menor que

>= mayor o igual que

<= menor o igual que

7.9 Operadores lógicos

and Ejemplo: x < 5 and x < 10

or Ejemplo: x < 5 or x < 4

not Ejemplo: not(x < 5 and x < 10)

7.10 Operadores de identidad

Sirven para comparar objectos, no sus valores. Comprueban que los objectos estén en el mismo lugar de la memoria.

is Ejemplo: x is y

is not Ejemplo: x is not y

7.11 Operadores de membresía

Comprueba si una secuencia está presente en un objeto.

in Ejemplo: x in y

not in Ejemplo: x not in y

8. Listas

OrdenCambianteAcepta duplicados
SiSiSi

Declaración

cars = ["Ford", "Volvo", "BMW"]

Tamaño

print(len(cars))

Valor de la posición 0

print(cars[0])

Recorrer

for x in cars:
	print(x)

Añadir un nuevo elemento

cars.append("Honda") 

Eliminar un elemento por su valor

cars.remove("Volvo") 

Eliminar un elemento por su índice

cars.pop(2) 

Ordenar

cars.sort() 

Inverso

cars.reverse() 

Insertar en la posición 1

cars.insert(1, "Seat") 

Conocer posición de un elemento por su valor

pos = cars.index("BMW")

Leave a reply