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.