Introducción a la programación con Python

Para complementar estos ejercicios tienes más material en el curso de análisis de datos con Python. Existe un excelente libro de introducción a Python: Python Crash Course.

Recuerda que puedes trabajar en estos ejercicios con el editor online de Future coder.

Para instalar Python junto a las librerías más utilizadas en bioinformática puedes utilizar anaconda.

Cheat sheets

Resumen de los métodos más utilizados para los tipos básicos en Python: Basic Python Cheat Sheets

Ejercicios

Las soluciones a los ejercicios puedes encontraslas en: ejercicios y soluciones.

Adivinar un número

Escribe un programa que elija al azar un número entre el uno y el diez, que le pregunte al jugador un número y que compruebe si has acertado o no.

Par o impar

Crea un programa que pida un número entero y que devuelva si es par o impar.

Palindromos

Escribe un programa que compruebe si una palabra es palindrómica o no.

Sitio de restricción

Busca el sitio de restricción en una secuencia de ADN.

Secuencia reversa y complementaria

Haz un programa que cree una secuencia de ADN reversa y complementaria.

Conversor Fahrenheit a Celsius

Crea una función que convierta de fahrenheit a celsius y otra que lo haga al revés.

Juego del ahorcado

Crea un juego del ahorcado.

Hola mundo en el Visual Studio Code

El Visual Studio Code es un excelente editor de código.

Más ejercicios

Frío o caliente

Escribe un programa que pregunte al usuario la temperatura actual y que responda diciendo si hace frío o calor.

Divide la cadena de texto

Escribe un programa que elimine un número determinado de letras, el que se le pida en una variable, de una cadena de texto e imprima el resultado.

Escribe asteriscos

Escribe un programa que pida un número e imprima ese mismo número de asteriscos “*”. (Puedes utilizar la función range).

Elimina letras

Escribe un programa que elimine algunas letras de una cadena de texto, las que le des en una lista, utilizando un bucle for.

Escribe el número reverso

Escribe un programa que genere el número con las cifras al revés separadas por espacios. Por ejemplo, si le das “7563” el resultado debería ser “3 6 5 7”.

Par o impar

Escribe un programa que imprima cada número del 1 al 20 y que indique si es par o impar.

Tablas de multiplicar

Escribe un programa que imprima las tablas de multiplicar hasta el 10.

Pirámide de números

Escribe un programa que imprima el siguiente patrón:

Caracteres impares

Escribe un programa que imprima las letras impares de una cadena de texto. (Puedes utilizar la función enumerate)

Suma los primeros números

Escribe un programa que sume los números desde 0 a 50 utilizando un bucle for.

Ejercicios con listas y diccionarios

Máximo y mínimo

Crea una función que calcule el máximo y el mínimo de una lista de números utilizando un bucle for. Compara el resultado con el que dan las funciones min y max..

Reverso de una lista

Escribe un programa que cree una lista en orden inverso utilizando un bucle for y compara con el resultado de la función reversed.

Filtra una lista de números

Escribe una función a la que dada una lista de números y un valor máximo, devuelva una nueva lista con los números menores o iguales al valor máximo.

Cuenta las palabras

Dada una cadena de texto con palabras escribe un programa que cuente el número de veces que aparece cada palabra.

Base datos de genes

Disponemos de la siguiente información almacenada en un fichero o cadena de texto.

'''nombre funcion cromosoma start end
gen1 kinasa chrom1 13904 18904
gen2 polimerasa chrom1 43904 49904
gen3 fosfatasa chrom2 1904 5904
'''

Queremos crear una base de datos que guarde la información relativa a los genes, por ejemplo en un diccionario. Una vez creada la base de datos deseamos que el usuario pueda pedir la información dando el nombre de un gen y que el programa imprima la información relativa a ese gen.

Lee un fichero fasta

Crea una función capaz de leer ficheros fasta.

Calcular el porcentaje de GC por secuencia

Dado un fichero fasta con secuencias, calcula el porcentaje de GC para cada una de ellas.

Introducción a pandas y numpy

Pandas y numpy son dos librerías ampliamente utilizadas en el análisis de datos.

¿Qué son los dataframes y arrays?.

Numpy tiene un excelente tutorial de introducción numpy, además de mucha más documentación.

Pandas tiene un tutorial sobre DataFrame y Series y una introducción a pandas en 10 minutos.

En mi curso sobre análisis de datos hay otra introducción a numpy y pandas que incluye ejercicios.