CursosEmpresasBlogLiveConfPrecios

Flujo de trabajo en Python

Clase 6 de 20 • Curso de Python: PIP y Entornos Virtuales

Contenido del curso

Introducción

  • 1
    Python en tu propio entorno de desarrollo local

    Python en tu propio entorno de desarrollo local

    03:26 min
  • 2
    Instalación en Windows (WSL) y Linux

    Instalación en Windows (WSL) y Linux

    06:54 min
  • 3
    Instalación en Mac

    Instalación en Mac

    06:02 min
  • 4
    Python con VSCode

    Python con VSCode

    04:25 min
  • 5
    Python con Git y GitHub

    Python con Git y GitHub

    08:23 min
  • 6
    Flujo de trabajo en Python

    Flujo de trabajo en Python

    Viendo ahora

PIP y Entornos Virtuales

  • 7
    ¿Qué es pip?

    ¿Qué es pip?

    12:45 min
  • 8
    Gráficas en Python con PIP

    Gráficas en Python con PIP

    12:49 min
  • 9
    ¿Qué es un ambiente virtual?

    ¿Qué es un ambiente virtual?

    04:54 min
  • 10
    Usando entornos virtuales en Python

    Usando entornos virtuales en Python

    09:36 min
  • 11
    requirements.txt

    requirements.txt

    22:40 min

Práctica

  • 12
    Solicitudes HTTP con Requests

    Solicitudes HTTP con Requests

    11:13 min
  • 13
    Pandas

    Pandas

    08:37 min
  • 14
    Python para Backend: web server con FastAPI

    Python para Backend: web server con FastAPI

    10:48 min

Python en contenedores de Docker

  • 15
    ¿Qué es Docker?

    ¿Qué es Docker?

    02:25 min
  • 16
    Instalación de Docker en Windows, macOS y Ubuntu

    Instalación de Docker en Windows, macOS y Ubuntu

    01:35 min
  • 17
    Dockerizando scripts de Python

    Dockerizando scripts de Python

    16:36 min
  • 18
    Docker para el día a día: automatizando la vinculación de archivos

    Docker para el día a día: automatizando la vinculación de archivos

    04:29 min
  • 19
    Dockerizando web services

    Dockerizando web services

    05:54 min

Próximos pasos

  • 20
    ¿Cómo continuar tu carrera profesional con Python?

    ¿Cómo continuar tu carrera profesional con Python?

    01:41 min
Tomar examen

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads

      Comentarios

      Juan Sebastian Betancur

      Juan Sebastian Betancur

      student•
      hace 3 años
        Juan Agustin Di Pasquo

        Juan Agustin Di Pasquo

        student•
        hace 3 años
        Diego Alejandro Pinto Moreno

        Diego Alejandro Pinto Moreno

        student•
        hace 2 años
      Nahuel Matozo

      Nahuel Matozo

      student•
      hace 3 años
      Yuli Alexandra Pulido Castañeda

      Yuli Alexandra Pulido Castañeda

      student•
      hace 4 años
        Juan R. Vergara M.

        Juan R. Vergara M.

        student•
        hace 2 años
      Leandro Tenjo

      Leandro Tenjo

      student•
      hace 3 años
        Ardanys Canchila Mercado

        Ardanys Canchila Mercado

        student•
        hace 3 años
        Hector Saldaña Espinoza

        Hector Saldaña Espinoza

        student•
        hace 3 años
      Fernando Burgos

      Fernando Burgos

      student•
      hace 3 años
      Jhon Freddy Tavera Blandon

      Jhon Freddy Tavera Blandon

      student•
      hace 3 años
      Jaime Eduardo Falla Cardozo

      Jaime Eduardo Falla Cardozo

      student•
      hace 3 años
        Bcanon@diamante.com.gt

        Bcanon@diamante.com.gt

        student•
        hace 3 años
        José Isidro Torres Caldea

        José Isidro Torres Caldea

        student•
        hace 3 años
      Diego Jurado

      Diego Jurado

      student•
      hace 4 años
      Cesar Pacheco

      Cesar Pacheco

      student•
      hace 3 años
      Miguel Angel Reyes Moreno

      Miguel Angel Reyes Moreno

      student•
      hace 3 años
      Angie paola Acuña fonseca

      Angie paola Acuña fonseca

      student•
      hace 3 años
        iecgerman .

        iecgerman .

        student•
        hace 3 años
      Emiliano Perez

      Emiliano Perez

      student•
      hace 3 años
      Diego Geovanny Bracero

      Diego Geovanny Bracero

      student•
      hace 4 años
      Jose Jhonatan Choque Araujo

      Jose Jhonatan Choque Araujo

      student•
      hace 10 meses
      José Fabián Beltrán Meza

      José Fabián Beltrán Meza

      student•
      hace un año
      Jairo Lachira Peralta

      Jairo Lachira Peralta

      student•
      hace 3 años
      Cesar Fernandez

      Cesar Fernandez

      student•
      hace 3 años
        Joel Orellana

        Joel Orellana

        student•
        hace 3 años
      Martín Alejandro Vera

      Martín Alejandro Vera

      student•
      hace 3 años
        Daniel Duque

        Daniel Duque

        student•
        hace 3 años
      Jeinfferson Bernal G

      Jeinfferson Bernal G

      student•
      hace 3 años
        Hector Saldaña Espinoza

        Hector Saldaña Espinoza

        student•
        hace 3 años
      Mariano Gobea Alcoba

      Mariano Gobea Alcoba

      student•
      hace 3 años

      Adjunto mi piedra, papel o tijeras que hice para los que no lo tengan, con manejo de errores incluido (aunque solo sea 1 posible):

      """Rock, paper, scissors! Rock, paper, scissors made on Python. """ import random def computer_choice(): """Gets a random option for the computer to use.""" computer= random.choice(options) return computer def user_choice(): """Gets the option the player will use.""" user= str(input("Select what you want to play this round: Rock, paper, scissors.\n")) user= user.lower() if user in options: return user else: raise Exception("Your choice is not valid. Check for typos and try again.") def run_game(): """Starts and handles the game from start to finish.""" rounds= 3 user_win= 0 computer_win= 0 print("*" * 15) print("The game will start now.") print("*" * 15) while True: computer= computer_choice() user= user_choice() print(f"{user} vs {computer}, ") if user == computer: rounds -= 1 print(f""" Tie! You have both picked {user} {rounds} remaining. """) if (user == "scissors" and computer == "paper") or (user == "rock" and computer == "scissors") or (user == "paper" and computer == "rock"): rounds -= 1 user_win += True print(f""" You have won this round! {user} beats {computer}! {rounds} remaining. """) if (computer == "scissors" and user == "paper") or (computer == "rock" and user == "scissors") or (computer == "paper" and user == "rock"): rounds -= 1 computer_win += True print(f""" You have lost this round. {computer} beats {user}! {rounds} remaining. """) if rounds <= 0: if user_win == computer_win: print("It's a tie, you ended the game with the same amount of points.") break if computer_win > user_win: print(f"Match ended. The winner is the computer with {computer_win} points.") break if computer_win < user_win: print(f"Match ended. You are the winner with {user_win} points!") break if __name__ == "__main__": # Global choice options. options= ("rock", "paper", "scissors") run_game()

      Muchas gracias 😄

      gracias

      Este curso pone a prueba tu paciencia

      Hola Chicos! :D Despues de copiar el codigo vamos ir a la terminal para correr el juego

      - cd game/ - python3 main.py

      vamos a guardar el proyecto en gitgub

      • cd.. ir a la carpeta padre

      • pwd verificar en donde nos encontramos

      • git add .

      • git commit -m "save game"

      • git push origin master

      Archivo README

      # Game Project Para correr el juego debes seguir las siguientes instrucciones en la terminal: ```sh cd game python3 main.py
      • git add .

      • git commit -m "Work in readme"

      • git push origin master

      Actualizar y verificar

      📝✔🥇

      📌 Cambie un poco la interfaz del juego.

      main_py Game.png
      … ++Aquí dejo el archivo++

      Excelente presentación, para visualizar mejor el juego y que sea más llamativo

      ¡Muchas gracias, me sirvió bastante!

      creo que no es el archivo correcto el "mainpy", el que esta en el apartado de recursos.

      _Flujo de trabajo en python _

      _Clonar el repositorio: _

      _para poder trabajar en el proyecto localmente, es necesario clonar el repositorio desde GitHub a la máquina local. _

      _Hacer cambios en el código: _

      • una vez que se tiene el repositorio clonado en la máquina local, se pueden hacer cambios y agregar nuevas funcionalidades al código utilizando cualquier editor de texto o entorno de desarrollo integrado (IDE) que prefiera.

      _Realizar commit y push: _

      **_

      • cuando se termina de trabajar en una funcionalidad o conjunto de cambios, se pueden guardar los cambios en la historia del proyecto haciendo un commit. Luego, se pueden enviar los cambios al repositorio en línea haciendo un push. _**

      _Crear un pull request: _

      • si se trabaja en un proyecto colaborativo, es posible que se necesite solicitar la revisión y aprobación de los cambios antes de que se integren al código principal del proyecto. Esto se hace mediante un pull request en GitHub.

      Revisar y mergear el pull request:

      • cuando se crea un pull request, se pueden solicitar a otros miembros del equipo que revisen y den su aprobación a los cambios propuestos. Una vez que se ha obtenido la aprobación necesaria, se pueden integrar los cambios al código principal del proyecto haciendo un merge del pull request.

      ++Este es solo un ejemplo de cómo puede ser un flujo de trabajo en Python con GitHub, y puede variar según las necesidades y preferencias del equipo de desarrollo.++

      No entendí muy bien el objetivo de la clase. ¿cual es el flujo de trabajo?

      Concuerdo totalmente contigo.

      El flujo de trabajo en general, es compartir información con los demás miembros del proyecto, por lo tanto, primero haces tu programa (o tu parte del programa) en tu máquina, haces pruebas y una vez que estás contento con tu resultado lo subes a GitHub para que sea visible (público), con esto ya el equipo te puede dar sugerencias de cómo mejorarlo, qué le faltó, si está perfecto... 👀 . ⚠ 🙅🏻‍♂️ No necesariamente tiene que ser un equipo, puedes subir tu proyecto personal a internet (en este caso GitHub) para que la comunidad lo vea, lo mejore, lo critique, que sirva para resolver un problema similar, etc. . En conclusión, este flujo de trabajo te hará visible a ti y a tu talento para resolver problemas con código. 🐍 . Espero haberte ayudado a comprender. ✌🏻

      Muy bueno que se vaya añadiendo complementos según avance del programa de acuerdo al curso como en el caso del juego piedra, papel tijera

      El flujo de trabajo es:

      1. creas un archivo.
      2. lo pruebas
      3. lo agregas a git
      4. git add .
      5. git commit -m
      6. git pull origin main
      7. git push origin main

      Yo hice un tutorial de este juego, les dejo el link del vídeo para que lo vean: Crea el juego 'PIEDRA PAPEL TIJERA' en Python 🐍💻🧱🧻✂️

      no vi el juego en recursos..para copiar y pegar

      https://replit.com/@iecgerman/python102#15_refactor_game.py

      Para los que les interese personalizar su Powershell les dejo este interesante post

      Personalizar Powershell

      Game Project

      Game Project is a Python code to play rock-paper-scissors

      Usage

      $cd game
      $python main.py

      Contributing

      Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

      Please make sure to update tests as appropriate.

      License

      MIT

      Para algunas personas como yo que desconocían de los backticks, las 2 maneras mas fáciles que encontre son:

      Alt + 96 = `

      AltGr + (boton donde se ubica } ç `) = ``

      Hola les comparto mi código del juego:

      El código en mi git:

      Para encontrar el codigo del juego vayan a esta clase

      Les dejo aquí una versión simple del piedra papel o tijeras, cuando salta error reinicia el programa

      import random

      def game_logic():

      user_option = input('''Elije entre:

      1) Piedra

      2) Papel

      3) Tijeras

      (Introduce el número de tu elección)

      ''' )

      computer_option = random.choice(["Piedra", "Papel", "Tijeras"])

      if user_option == "1":

      user_option = "Piedra"

      if computer_option == "Tijeras":

      print("El usuario eligió" , user_option)

      print("La computadora eligió" , computer_option)

      print("Felicidades, usted ha ganado!")

      elif computer_option == "Papel":

      print("El usuario eligió" , user_option)

      print("La computadora eligió" , computer_option)

      print("La computadora ha ganado!")

      else:

      print("Es un empate!")

      elif user_option == "2":

      user_option = "Papel"

      if computer_option == "Piedra":

      print("El usuario eligió" , user_option)

      print("La computadora eligió" , computer_option)

      print("Felicidades, usted ha ganado!")

      elif computer_option == "Tijeras":

      print("El usuario eligió" , user_option)

      print("La computadora eligió" , computer_option)

      print( "La computadora ha ganado!")

      else:

      print("Es un empate!")

      elif user_option == "3":

      user_option = "Tijeras"

      if computer_option == "Papel":

      print("El usuario eligió" , user_option)

      print("La computadora eligió" , computer_option)

      print("Felicidades, usted ha ganado!")

      elif computer_option == "Piedra":

      print("El usuario eligió" , user_option)

      print( "La computadora eligió" , computer_option)

      print("La computadora ha ganado!")

      else:

      print("Es un empate!")

      else:

      print("Esa no es una jugada válida!")

      print('''

      Reiniciando el programa...

      ''')

      game_logic()

      if __name__ == "__main__":

      game_logic()

      gracias!

      Si git les pide a cada push su contraseña https://www.freecodecamp.org/espanol/news/como-evitar-que-git-siempre-solicite-las-credenciales-de-usuario/

      me funcionó de una la instrución git config --global credential.helper store

      quizá no sea lo más seguro, pero aun no prgramo para El Pentàgono ni para el FBI

      también lo puedes hacer con una llave SSH, y dejas el espacio donde te pide una palabra de confirmación en blanco

      Excelente poder agregar intrucciones en el README

      Sí ayudan bastante a la comunidad al conocer un repositorio nuevo

      No es necesario entrar en la carpeta del prouyecto. Podemos marcar la ruta para llegar hasta el archivo main desde donde estemos. Por ejemplo:

      python3 game/main.py