Funciones predefinidas#

Logo Python

Funciones básicas de Python 3.8

Manipulación de variables#

Averiguar tipo de dato#

1cadena = "soy un texto"
2
3print(type(cadena))

Manipulación de Strings#

Longitud de un String#

1nombre = "Guillermo"
2
3print(len(nombre))

Conversión número a String#

1edad = 33
2
3# Aquí tendríamos un error si no convertimos:
4print("Tienes " + str(edad) + " años.")

Conversión String a Lista#

1compra = "tomates, lechugas, peras, patatas"
2
3lista_compra = compra.split(", ")
4
5print(lista_compra)

Reemplazar palabras#

1frase = "Soy la persona mas afortunada"
2
3print(frase.replace('Soy', 'Era'))

Conversión a mayúsculas#

1frase = "Hace buen día"
2
3print(frase.upper())

Conversión a minúsculas#

1frase = "MI nombre Es Alfredo"
2
3frase = frase.lower()
4print(frase)

Eliminar espacios en blanco a los lados#

1frase = "   Soy la persona mas afortunada         "
2
3print(frase.strip())

Localizar posición de caracteres en cadena#

1secreto = "La palabra secreta es Gato"
2
3# Esto vale para cualquier tipo en Python:
4if "Gato" in secreto:
5    print("Descifrado el secreto")

Comprobar que no existe un valor#

 1# Lista con datos repetidos:
 2lista_compra = ['galletas', 'pescado', 'galletas', 'fresas', 'pescado', 'pescado','fresas']
 3
 4# lista donde irán valores filtrados:
 5lista_unica = []
 6
 7# recorrer los datos:
 8for compra in lista_compra:
 9    if compra not in lista_unica:
10        lista_unica.append(compra)
11
12print(lista_unica)

Formatear contenido de una variable con otras#

1nombre = "Guillermo"
2apellidos = "Granados Gómez"
3edad = 33
4
5# para formatear cadenas se usa format():
6print("Me llamo {} {} y tengo {} años.".format(nombre, apellidos, str(edad)))

Manipulación de Números#

Conversión String a Integer#

1numero = int(input("introduce un número: "))
2print(numero + 15)

Conversión String a Float#

1numero = float(input("introduce un número: "))
2print(numero + 12.6)

Redondeo de decimales#

1numero = 13.587
2
3# redondeo a entero:
4print(round(numero))
5
6# redondear a nivel decimal:
7print(round(numero, 2))

Manipulación de Listas#

Comprobar tamaño#

1lista = ["talco", "crema", "gel", "champú"]
2
3# También se usa len para medir tamaño de una lista:
4print(len(lista))

Imprimir contenido#

1print(lista[1])

Imprimir ultimo valor de la lista#

1print(lista[len(lista)-1])

Añadir elemento a la lista#

1lista.append("nuevo texto")
2print lista

Borra el último elemento#

1lista.pop()
2print(lista)

Borrar elemento por su posición#

1del lista[2]
2print(lista)

Combinar elementos de la lista en un string#

1lista = ['P','e','p','e']
2lista = ''.join(lista)
3print(lista)

Convertir a lista una serie de valores#

1numeros = range(0,30)
2lista = list(numeros)
3print(lista)

Rango de números#

1rango = range(1,11)
2print(list(rango))

Recuperar valor máximo#

1print(max(rango))

Recuperar valor mínimo#

1print(min(rango))

Suma total de todos los valores#

1print(sum(rango))

Ordenar elementos#

1lista = ["gato", "nocilla", "avión", "leche"]
2
3# Orden normal:
4print(sorted(lista))
5
6# Orden inverso:
7print(sorted(lista, reverse=True))

Nota

En las tuplas podemos usar casi todas las mismas funciones excepto append() y pop() y se cambia el modificador list() por tuple()

Filtrar elementos con función filter#

 1lista_consolas = [
 2    {'marca': 'Sega', 'modelo':'Mega Drive', 'generación': '4ª Generación'},
 3    {'marca': 'Sega', 'modelo':'Master System', 'generación': '3ª Generación'},
 4    {'marca': 'Sony', 'modelo':'PlayStation', 'generación': '5ª Generación'},
 5    {'marca': 'Nintendo', 'modelo':'Gamecube', 'generación': '6ª Generación'}
 6]
 7
 8# recuperar todas las consolas menos las de Segaa:
 9consolas = list(filter(lambda consola: consola['marca'] != 'Sega', lista_consolas))
10
11print(consolas)
12
13.. attention:
14    El añadir la función list() es debido a que el dato que devuelve es tipo filter, entonces hay que convertirlo, lo mismo ocurre con map().
15.. note::
16    La función filter recibe dos parámetros, el primero será la función a ejectuar y el segundo un iterable como una lista, set o tupla.

Mapear elementos de un iterable con map#

La función map recorre todos los elementos de un iterable de modo similar a una secuencia for.

 1numeros = [8, 5, 2, 0, 3, 9, 5]
 2
 3# multiplicar por 10 los números:
 4numeros_diez = list(map(lambda x: x*10, numeros))
 5
 6print(numeros_diez)
 7
 8# sumar ambas listas:
 9total_numeros = list(map(lambda x,y: x+y, numeros, numeros_diez))
10
11print(total_numeros)

Manipulación de Diccionarios#

Convertir a tupla#

1tupla = diccionario.items()
2print(tupla)

Copiar un diccionario#

1otro = diccionario.copy()
2print(otro)

Recuperar solo las claves del diccionarios#

1claves = diccionario.keys()
2print(claves)

Recuperar solo los valores del diccionario#

1valores = diccionario.values()
2print(valores)

Tratamiento de archivos#

Nomenclatura

  • Escritura: w

  • Lectura: r

  • Actualización: a

Manipulación de archivos#

  • Escritura de archivos:

 1# abrimos el archivo con escritura por ejemplo:
 2archivo = open('archivo.txt', 'w')
 3
 4# Escribimos varias líneas:
 5archivo.write('Hola')
 6archivo.write('\n')
 7archivo.write('Lo de antes es un salto de línea')
 8
 9# Y lo cerramos
10archivo.close()
  • Lectura de archivos:

1archivo = open('archivo.txt', 'r')
2
3# Y lo guardamos en una lista eliminando los saltos:
4lista = archivo.read().split('\n')
5
6for l in lista:
7    print(l)
8
9archivo.close()
  • Actualización de archivos:

1archivo = open('archivo.txt', 'a')
2
3archivo.write('\n')
4archivo.write('linea adicional')
5
6archivo.close()