¿Sabías que Python es conocido como un lenguaje de programación todo terreno?
Sí, lo es, aunque no debería usarse en todos los proyectos,
Tú puede usarlo para crear aplicaciones de escritorio, juegos, aplicaciones móviles, sitios web y software del sistema. Es incluso el lenguaje más adecuado para la implementación de algoritmos de Inteligencia Artificial y Aprendizaje Automático.
Por eso, pasé las últimas semanas recopilando ideas de proyectos únicos para desarrolladores de Python. Es de esperar que estas ideas de proyectos le devuelvan el interés en este increíble lenguaje. La mejor parte es que puedes mejorar tus habilidades de programación en Python con estos proyectos divertidos pero desafiantes.
Echemos un vistazo a ellos uno por uno.
1- Crea un software GUI usando comandos de voz
En estos días, se ha logrado un progreso masivo en el campo del desarrollo de aplicaciones de escritorio. Verá muchos constructores de GUI y bibliotecas de reconocimiento de voz de arrastrar & soltar. Entonces, ¿por qué no unirlos y crear una interfaz de usuario hablando con la computadora?
Este es un concepto puramente nuevo y después de algunas investigaciones, descubrí que nadie había intentado nunca hacerlo. Por lo tanto, podría ser un poco más desafiante que los que se mencionan a continuación.
Aquí hay algunas instrucciones para comenzar con este proyecto usando Python. En primer lugar, necesita estos paquetes: –
- Biblioteca de reconocimiento de voz
- PAGE – Arrastre & Suelte GUI Builder
- Documentación
- Video de cómo funciona PAGE
- Cree una ventana de inicio de sesión usando PAGE
Ahora, la idea es codificar algunos comandos de voz como:
Comandos de voz | Descripción |
---|---|
Agregar campo de entrada en la ventana | Arrastra un campo de entrada de la «Barra de herramientas de widgets ”Y suéltelo en nuestra ventana principal. |
Mueva INPUT_FIELD_NAME hacia la izquierda / derecha / arriba / abajo / centro de la ventana | Moverá un campo de entrada específico a la ubicación mencionada. |
Mover INPUT_FIELD_NAME 5px arriba / abajo / izquierda / aparejo ht | Este comando indica a los programas que cambien la posición de un campo de entrada específico como se menciona en píxeles y dirección. |
Cambia el color INPUT_FIELD_NAME a rojo / # ff0000 | Simplemente cambia el color de fuente de un campo de entrada específico. |
Entendiste el punto, ¿verdad? Es muy simple y directo agregar más comandos como estos.
Ya que este será un Producto Mínimo Viable (MVP). Por lo tanto, estará completamente bien si tiene que codificar muchas declaraciones condicionales (por ejemplo, if … else).
Después de configurar algunos comandos básicos, es hora de probar el código. Por ahora, puede intentar crear un formulario de inicio de sesión muy básico en una ventana.
La mayor flexibilidad de esta idea es que se puede implementar para el desarrollo de juegos, sitios web y aplicaciones móviles. Incluso en diferentes lenguajes de programación.
2- Bot de apuestas AI
Las apuestas son una actividad en la que las personas predicen un resultado y, si tienen razón, reciben una recompensa a cambio. Ahora, hay muchos avances tecnológicos que ocurrieron en Inteligencia Artificial o Aprendizaje Automático en los últimos años.
Por ejemplo, es posible que haya oído hablar de programas como AlphaGo Master, AlphaGo Zero y AlphaZero que pueden jugar Go (juego) mejor que cualquier jugador humano profesional. Incluso puede obtener el código fuente de un programa similar llamado Leela Zero.
El punto que quiero transmitir es que la IA se está volviendo más inteligente que nosotros. Lo que significa que puede predecir algo mejor al tener en cuenta todas las posibilidades y aprender de experiencias pasadas.
Apliquemos algunos conceptos de aprendizaje supervisado en Python para crear un robot de apuestas con IA. Aquí hay algunas bibliotecas que necesita para comenzar.
- pandas: análisis de datos
- NumPy: matrices, matrices y funciones matemáticas multidimensionales
- scikit-learn – Machine Learning
- XGBoost – Gradient Boosting
- Matplotlib – Trazado
- seaborn – Visualización de datos estadísticos
- pickle – Objeto Python Serialización
Al principio, debe seleccionar un juego (por ejemplo, tenis, fútbol, etc.) para predecir los resultados.Ahora busque datos de resultados históricos de partidos que se puedan utilizar para entrenar al modelo.
Por ejemplo, los datos de partidos de tenis se pueden descargar en formato .csv desde el sitio web tennis-data.co.uk.
En caso de que no esté familiarizado con las apuestas, así es como funciona.
Después de entrenar el modelo, tenemos que calcular el nivel de confianza para cada predicción, averigüe el rendimiento de nuestro bot por comprobando cuántas veces la predicción fue correcta y, finalmente, también controle el retorno de la inversión (ROI).
Descargue un proyecto de bot de apuestas de IA de código abierto similar de Edouard Thomas.
3- Bot de comercio
Trading Bot es muy similar al proyecto anterior porque también requiere IA para la predicción.
Ahora la pregunta es si una IA puede predecir correctamente la fluctuación de precios de las acciones?
Y la respuesta es Sí.
Antes de comenzar, editó algunos datos para desarrollar un robot comercial.
- Yahoo! Finanzas: para obtener datos bursátiles
- Alpha Vantage: API en tiempo real para datos financieros
Estos recursos de Investopedia pueden ayudar a entrenar al bot.
- Estrategias comerciales para principiantes
- Realice una operación solo si pasa esta prueba de 5 pasos
Después de leer estos dos artículos, ahora tendrá una mejor comprensión de cuándo comprar acciones y cuándo no. Este conocimiento se puede transformar fácilmente en un programa Python que automáticamente toma la decisión por nosotros.
También puede tomar referencias de este bot de comercio de código abierto llamado freqtrade. Está construido con Python e implementa varios algoritmos de aprendizaje automático.
4- Iron Man Jarvis (Asistente virtual basado en IA)
Esta idea está tomada de la serie de películas de Hollywood Iron Hombre. La película gira en torno a la tecnología, los robots y la inteligencia artificial.
Aquí, Iron Man ha creado un asistente virtual para sí mismo utilizando inteligencia artificial. El programa se conoce como Jarvis y ayuda a Iron Man en las tareas diarias.
Iron Man le da instrucciones a Jarvis usando un lenguaje sencillo en inglés y Jarvis responde también en inglés. Significa que nuestro programa necesitará reconocimiento de voz así como funcionalidades de conversión de texto a voz.
Recomendaría usar estas bibliotecas:
- Reconocimiento de voz
- Texto a voz (TTS)
Por ahora, puede codificar los comandos de voz como:
Comandos de voz | Ejemplo | Descripción |
---|---|---|
Abrir SOFTWARE_NAME | Abrir Google Chrome | Abrir un programa instalado en su computadora. |
PALABRA CLAVE Wikipedia | Wikipedia de Donald Trump | Buscará en Wikipedia una palabra clave específica y leerá el contenido utilizando la funcionalidad de conversión de texto a voz. |
Escanear NOMBRE DE UNIDAD / NOMBRE DE CARPETA / NOMBRE DE ARCHIVO | Escanear la Unidad C | A través de este comando, Jarvis indica al software antivirus que realice un escaneo. |
Yo También puede usar Jarvis para muchas otras tareas como:
- Establecer alarma en el móvil.
- Verifique continuamente la cámara de seguridad del hogar e informe en caso de que alguien esté esperando afuera. Puede agregar más funciones como detección y reconocimiento de rostros. Le ayuda a saber quiénes o cuántas personas están allí.
- Abrir / cerrar las ventanas de la habitación.
- Encender / apagar las luces.
- Responder automáticamente a los correos electrónicos .
- Programe tareas.
Incluso el fundador de Facebook, «Mark Zuckerberg» ha construido un Jarvis como un proyecto paralelo.
5 – Supervisar un sitio web para informarse sobre un próximo concierto de artista
Songkick es un servicio muy popular que proporciona información sobre los próximos conciertos. Su API se puede utilizar para buscar próximos conciertos mediante:
- Artista
- Ubicación
- Lugar
- Fecha y hora
Puede crear una secuencia de comandos de Python que sigue revisando un concierto específico todos los días mediante la API de Songkick. Por último, envía un correo electrónico a ti mismo cuando el concierto esté disponible.
A veces, Songkick incluso muestra el enlace de compra de entradas en su sitio web. Pero este enlace podría ir a a diferente sitio web para diferentes conciertos. Significa que es muy difícil comprar boletos automáticamente incluso si hacemos uso de web scraping.
En su lugar, simplemente podemos mostrar el enlace comprar boletos tal como está en nuestra aplicación para la acción manual.
6- Renovar automáticamente certificados SSL gratuitos de Lets Encrypt
Lets Encrypt es una autoridad certificadora que ofrece certificados SSL gratuitos. Pero, el problema es que este certificado solo es válido por 90 días. Después de 90 días, debes renovarlo.
En mi opinión, este es un gran escenario para la automatización usando Python. Podemos escribir un código que renueve automáticamente el certificado SSL de un sitio web antes de que caduque.
Consulte este código en GitHub para inspirarse.
7- Reconozca a las personas en la multitud
En estos días, los gobiernos habían instalado cámaras de vigilancia en lugares públicos para aumentar la seguridad de sus ciudadanos. La mayoría de estas cámaras son simplemente para grabar video y luego los expertos forenses tienen que reconocer o rastrear manualmente al individuo.
¿Qué pasa si creamos un programa Python que reconoce a cada persona en la cámara en tiempo real? En primer lugar, necesitamos acceso a una base de datos de tarjetas de identificación nacional, que probablemente no tengamos.
Por lo tanto, una opción fácil es crear una base de datos con los registros de los miembros de su familia.
Luego, puede usar una biblioteca de reconocimiento facial y conectarla con la salida de la cámara.
8- Seguimiento de contactos
El seguimiento de contactos es una forma de identificar todos aquellas personas que entran en contacto entre sí durante un período de tiempo específico. Es principalmente útil en una pandemia como COVID-19 o VIH. Porque sin ningún dato sobre quién está infectado no podemos detener su propagación.
Python se puede utilizar con un algoritmo de aprendizaje automático llamado DBSCAN (agrupación espacial de aplicaciones con ruido basado en densidad) para el seguimiento de contactos.
Como esto es solo un proyecto paralelo, no tenemos acceso a cualquier dato oficial. Por ahora, es mejor generar algunos datos de prueba realistas usando g Mockaroo.
Puede consultar este artículo para ver la implementación de código específico.
9- Mover archivos automáticamente de una carpeta a otra
Este es un programa Python muy básico que sigue monitoreando una carpeta. Cada vez que se agrega un archivo en esa carpeta, verifica su tipo y lo mueve a una carpeta específica en consecuencia.
Por ejemplo, podemos rastrear nuestra carpeta de descargas. Ahora, cuando se descarga un nuevo archivo, se moverá automáticamente a otra carpeta según su tipo.
Los archivos .exe probablemente sean configuraciones de software, así que muévalos dentro de la carpeta «software». , imágenes en movimiento (png, jpg, gif) dentro de la carpeta «imágenes».
De esta manera podemos organizar diferentes tipos de archivos para un acceso rápido.
10- Recopilar videos de trayectoria profesional De YouTube
Cree una aplicación que acepte los nombres de las habilidades que necesitamos aprender para una carrera.
Por ejemplo, para convertirnos en desarrolladores web, necesitamos aprender :
Después de ingresar las habilidades, habrá un botón «Generar trayectoria profesional». Le indica a nuestro programa que busque en YouTube y seleccione videos / listas de reproducción relevantes de acuerdo con cada habilidad. En caso de que haya muchos videos similares para habilidad, luego seleccionará la que tenga más vistas, comentarios, me gusta, etc. c.
El programa luego agrupa estos videos de acuerdo con las habilidades y muestra su miniatura, título y enlace en la GUI.
También analizará la duración de cada video, los agregará y luego informarnos cuánto tiempo nos llevará aprender esta carrera.
Ahora, como usuario, podemos ver estos videos que se ordenan paso a paso para convertirnos en un maestro en esta carrera.
Conclusión
Desafiarte a ti mismo con proyectos de programación únicos te mantiene activo, mejora tus habilidades y te ayuda a explorar nuevas posibilidades.
Parte del proyecto Las ideas que mencioné anteriormente también se pueden usar como su Proyecto de fin de año.
Es hora de mostrar su creatividad con el lenguaje de programación Python y convertir estas ideas en algo de lo que se sentirá orgulloso.
Gracias para leer!