• No hay productos en el carrito.

Inicio / Cursos / Python Mega Course: Build 20 Real-World Apps and AI Agents
Impartido por Ardit Sulce | 600,000+ StudentsPago único de $2,800 MXN · acceso por 12 meses

Python Mega Course: Build 20 Real-World Apps and AI Agents

Learn Python from beginner to pro — build and deploy web apps, APIs, automation, data science & AI agents.

Certificado oficial emitido por la SEPA través del Gobierno del Estado de México
12 meses de acceso En línea · 60 h 57 unidades
Qué aprenderás

Lo que serás capaz de hacer

Most people who try to learn Python quit. Not because Python is hard — but because tutorials teach you syntax you forget by Tuesday. You watch, you nod, you copy the code… and a week later you still can't build anything on your own. This course fixes that. You don't learn Python and then build apps — you learn Python by building 20 real-world apps , including AI agents with LangChain. By the end you won't just "know Python." You'll have built things real people can actually use. Taught by Ardit Sulce , trusted by 600,000+ students across Udemy . This course alone has 362,000+ students and 73,000+ ratings at 4.6★ — one of the most popular Python courses on the platform. And the timing has never mattered more. AI can write code — but it can't build and ship your app. Real software isn't a single snippet; it's many pieces wired together: databases, APIs, a web framework, and the logic that connects them all. Understanding how those parts fit is what separates someone who "can code" from someone who can actually ship working software — and it's exactly the part AI still can't do for you. This course teaches it the only way that sticks: by building 20 complete apps where you connect databases, consume and build APIs, and assemble all the moving parts into something real. You even learn to build AI agents yourself with LangChain — so you come out both AI-proof and AI-powered . What you'll be able to do Build and run real applications — desktop apps, web apps, APIs, data tools, and AI agents — that work for real users, not throwaway scripts. Add a skill that opens doors: higher pay, more responsibility, and the option to move into full-time development. Solve real problems on your own — the confidence to take any idea and turn it into working software. Do the part AI can't: connect databases, wire up APIs, and assemble all the pieces into a real, working app — then put AI to work for you by building your own agents. Why this course is different Project-based from day one. You build interesting apps that keep you motivated — not endless theory. You learn programming logic, not memorized syntax. That's the skill that lasts. You go beyond scripts to full applications, with real-world structure and deployment. You build AI automations and agents with Python and the new LangChain v1 — the skill separating relevant developers from replaceable ones. Every concept is reinforced with hands-on practice, so it actually sticks. What's inside 20 real-world apps built step by step — automation tools, web apps, APIs, data science tools, web scrapers, desktop GUIs, and AI agents. 57 sections, 454 lectures (~50 hours of video) taking you from the absolute basics to advanced topics. 84 hands-on coding exercises to practice as you learn. Dedicated bug-fixing exercises that train you to read and fix real errors. Quizzes to lock in the theory. AI Role Play skill checks — practice and test your skills with an AI tutor at the end of each section. Cheatsheets, an A–Z programming glossary, and downloadable source code for every section. Q&A community support plus the ability to message the instructor . Tips, tricks, and real-world advice throughout. Who this is for Complete beginners who want to finally understand Python by building real things. Working professionals who want to add Python to their current role and become more valuable at work. Career switchers who want to become full developers. Anyone who's tried Python before but it didn't stick. No prior programming experience required. All you need is a computer (Windows, macOS, or Linux) and the willingness to write code as you go. Build real apps. Gain a skill that pays. Enroll now and start building today.

  • Build 20 real-world Python apps, AI Automations & Agents from scratch.
  • Automate repetitive tasks using Python scripts.
  • Create your own web apps, data science tools, and desktop GUIs.
  • Master core Python concepts through a hands-on, project-based approach.
  • Integrate Python with modern AI tools like LangChain to build intelligent Agents and Automations.
  • Work with APIs, web scraping, and data processing to solve real problems.

Temario

UNIDAD 1 - First Steps: Capturing and Storing User Input (Variables, User Input, Lists) · 27 lecciones

UNIDAD 1 - First Steps: Capturing and Storing User Input (Variables, User Input, Lists)

  • Welcome to the courseVideo · 4 min
  • Why learn Python when AI can write the code?Video · 5 min
  • Make the best of AI when learning PythonVideo · 4 min
  • Today's GoalsVideo · 4 min
  • Helpful ResourcesLectura · 0 min
  • Installing Python and PyCharmVideo · 8 min
  • Getting Started with PyCharmVideo · 11 min
  • Building the Task Manager App - The First StepVideo · 4 min
  • Printing Out TextActividad · 0 min
  • Printing Out Any TextActividad · 0 min
  • Getting User InputVideo · 10 min
  • Declaring VariablesActividad · 0 min
  • Storing User Input in ListsVideo · 8 min
  • Creating Lists of VariablesActividad · 0 min
  • Creating Lists of Variables and StringsActividad · 0 min
  • Printing List of StringsActividad · 0 min
  • Printing the TypeActividad · 0 min
  • Coding ExperimentsVideo · 7 min
  • Bonus ExampleVideo · 4 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • Programming Tool/Concept of the Day: The Python ConsoleVideo · 6 min
  • Quiz, Day 1Cuestionario · 0 min
  • Cheatsheet, Day 1Lectura · 0 min
  • Course CheatsheetsLectura · 0 min
  • Programming Terms: A to Z GlossaryLectura · 0 min
  • Section 1 Source CodeLectura · 0 min
UNIDAD 2 - Make Your App Interactive (Methods, While Loops) · 15 lecciones

UNIDAD 2 - Make Your App Interactive (Methods, While Loops)

  • Recap of YesterdayVideo · 1 min
  • Getting User Input RepeatedlyVideo · 6 min
  • Infinite While LoopsActividad · 0 min
  • Storing User Input RepeatedlyVideo · 9 min
  • Append Item to ListActividad · 0 min
  • Capitalize TextActividad · 0 min
  • Coding ExperimentsVideo · 6 min
  • Capitalize MethodActividad · 0 min
  • Capitalize All WordsActividad · 0 min
  • Bonus ExampleVideo · 7 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • Quiz, Day 2Cuestionario · 0 min
  • Cheatsheet, Day 2Lectura · 0 min
  • Section 2 Source CodeLectura · 0 min
UNIDAD 3 - Control Program Flow for Smart Features (Match-Case, For Loops) · 16 lecciones

UNIDAD 3 - Control Program Flow for Smart Features (Match-Case, For Loops)

  • Recap of YesterdayVideo · 1 min
  • Todo List View and Program ExitVideo · 7 min
  • Match-CaseActividad · 0 min
  • Improving the Program OutputVideo · 6 min
  • For-LoopActividad · 0 min
  • Code ExperimentsVideo · 7 min
  • Match-Case with Bitwise OperatorActividad · 0 min
  • For-Loop and Title CaseActividad · 0 min
  • Bonus ExampleVideo · 4 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • For-Loop with NumbersActividad · 0 min
  • Programming Tool/Concept of the Day: What Surprisingly is PythonVideo · 4 min
  • Quiz, Day 3Cuestionario · 0 min
  • Cheatsheet, Day 3Lectura · 0 min
  • Section 3 Source CodeLectura · 0 min
UNIDAD 4 - Manipulate Data (List Indexing, Tuples) · 17 lecciones

UNIDAD 4 - Manipulate Data (List Indexing, Tuples)

  • Recap of YesterdayVideo · 2 min
  • Add an "Edit" FeatureVideo · 15 min
  • Coding ExperimentsVideo · 12 min
  • List of Serial NumbersActividad · 0 min
  • List of ItemsActividad · 0 min
  • Bonus ExampleVideo · 13 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • String ReplaceActividad · 0 min
  • String Replace and For-LoopActividad · 0 min
  • Appending Items to ListActividad · 0 min
  • Tuple of TuplesActividad · 0 min
  • Assigning VariablesActividad · 0 min
  • Programming Tool/Concept of the Day: Text Editors, Code Editors, IDE, PyCharmVideo · 15 min
  • Quiz, Day 4Cuestionario · 0 min
  • Cheatsheet, Day 4Lectura · 0 min
  • Section 4 Source CodeLectura · 0 min
UNIDAD 5 - Display and Structure Output (Enumeration, f-strings) · 21 lecciones

UNIDAD 5 - Display and Structure Output (Enumeration, f-strings)

  • Recap of YesterdayVideo · 2 min
  • Numbered TodosVideo · 5 min
  • List of Three ItemsActividad · 0 min
  • List of Four ItemsActividad · 0 min
  • Enumeration 1Actividad · 0 min
  • Enumeration 2Actividad · 0 min
  • Improving the Program OutputVideo · 3 min
  • Enumeration and f-stringsActividad · 0 min
  • Enumeration, f-strings, and CapitalizingActividad · 0 min
  • Add a "Complete Todo" FeatureVideo · 9 min
  • Removing ItemsActividad · 0 min
  • Code ExperimentsVideo · 10 min
  • Finding the LengthActividad · 0 min
  • Length Calculation in For-LoopActividad · 0 min
  • Bonus ExampleVideo · 6 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • For-Loop and Sorted ListActividad · 0 min
  • Quiz, Day 5Cuestionario · 0 min
  • Cheatsheet, Day 5Lectura · 0 min
  • Section 5 Source CodeLectura · 0 min
UNIDAD 6 - Persist Data with Files (Processing Text Files, Reading/Writing) · 19 lecciones

UNIDAD 6 - Persist Data with Files (Processing Text Files, Reading/Writing)

  • Recap of YesterdayVideo · 2 min
  • Storing Items in Text FilesVideo · 20 min
  • Getting Todo Items from Text FilesVideo · 4 min
  • How Data Types are CreatedVideo · 3 min
  • Code ExperimentsVideo · 9 min
  • Bonus ExampleVideo · 11 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • Read File and PrintActividad · 0 min
  • Read File, Modify, and PrintActividad · 0 min
  • Read File and Analyze its Content 1Actividad · 0 min
  • Read File and Analyze its Content 2Actividad · 0 min
  • Creating a Text FileActividad · 0 min
  • The zip() FunctionActividad · 0 min
  • Creating Multiple Text FilesActividad · 0 min
  • Programming Tool/Concept of the Day: Online Python CommunitiesVideo · 4 min
  • Quiz, Day 6Cuestionario · 0 min
  • Cheatsheet, Day 6Lectura · 0 min
  • Section 6 Source CodeLectura · 0 min
UNIDAD 7 - Optimize and Annotate Your Code (List Comprehensions, Code Comments) · 15 lecciones

UNIDAD 7 - Optimize and Annotate Your Code (List Comprehensions, Code Comments)

  • Recap of YesterdayVideo · 2 min
  • Improving the Program OutputVideo · 9 min
  • Code ExperimentsVideo · 6 min
  • Bonus ExampleVideo · 3 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • List ComprehensionActividad · 0 min
  • Length and List ComprehensionActividad · 0 min
  • Type Conversion and List ComprehensionActividad · 0 min
  • List Comprehension on NumbersActividad · 0 min
  • Sum of NumbersActividad · 0 min
  • Programming Tool/Concept of the Day: Usages of Python in Real LifeVideo · 12 min
  • Quiz, Day 7Cuestionario · 0 min
  • Cheatsheet, Day 7Lectura · 0 min
  • Section 7 Source CodeLectura · 0 min
UNIDAD 8 - Master File Management (Context Managers, With Statement) · 16 lecciones

UNIDAD 8 - Master File Management (Context Managers, With Statement)

  • Recap of YesterdayVideo · 1 min
  • Optimizing the CodeVideo · 4 min
  • Editing and Completing Todo ItemsVideo · 10 min
  • With Context Manager -File ReadingActividad · 0 min
  • With Context Manager -Analyzing ContentActividad · 0 min
  • Code ExperimentsVideo · 7 min
  • Bonus ExampleVideo · 7 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • With Context Manager -File WritingActividad · 0 min
  • With Context Manager and For-LoopActividad · 0 min
  • With Context Manager with Reading and WritingActividad · 0 min
  • Programming Tool/Concept of the Day: Steps of Creating and Maintaining a ProgramVideo · 3 min
  • Quiz, Day 8Cuestionario · 0 min
  • Cheatsheet, Day 8Lectura · 0 min
  • Section 8 Source CodeLectura · 0 min
UNIDAD 9 - Decision Making in Apps (If/Elif/Else, Dictionaries) · 16 lecciones

UNIDAD 9 - Decision Making in Apps (If/Elif/Else, Dictionaries)

  • Recap of YesterdayVideo · 3 min
  • Improving the "Add" FeatureVideo · 14 min
  • Optimizing the ProgramVideo · 10 min
  • Code ExperimentsVideo · 9 min
  • Bonus ExampleVideo · 24 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • List of FloatsActividad · 0 min
  • Dictionary of TuplesActividad · 0 min
  • List Slicing 1Actividad · 0 min
  • List Slicing 2Actividad · 0 min
  • List Slicing 3Actividad · 0 min
  • Programming Tool/Concept of the Day: High vs. Low Level Programming LanguagesVideo · 5 min
  • Quiz, Day 9Cuestionario · 0 min
  • Cheatsheet, Day 9Lectura · 0 min
  • Section 9 Source CodeLectura · 0 min
UNIDAD 10 - Stop Your App from Crashing (Error Handling, Try-Except) · 14 lecciones

UNIDAD 10 - Stop Your App from Crashing (Error Handling, Try-Except)

  • Recap of YesterdayVideo · 3 min
  • Fixing Two Bugs in the ProgramVideo · 9 min
  • Anticipating Program ErrorsVideo · 10 min
  • Code ExperimentsVideo · 6 min
  • Bonus ExampleVideo · 8 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • For Loops and Conditionals 1Actividad · 0 min
  • For Loops and Conditionals 2Actividad · 0 min
  • Loops and SlicingActividad · 0 min
  • Loops, Slicing, and String ManipulationActividad · 0 min
  • Quiz, Day 10Cuestionario · 0 min
  • Cheatsheet, Day 10Lectura · 0 min
  • Section 10 Source CodeLectura · 0 min
UNIDAD 11 - Write Custom Functions to Reduce Code Repetition (Functions) · 15 lecciones

UNIDAD 11 - Write Custom Functions to Reduce Code Repetition (Functions)

  • Recap of YesterdayVideo · 2 min
  • Avoiding Repetitive CodeVideo · 17 min
  • Code ExperimentsVideo · 8 min
  • Bonus ExampleVideo · 10 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • Function to Process a List 1Actividad · 0 min
  • Function to Process a List 2Actividad · 0 min
  • Function to Process a StringActividad · 0 min
  • Function to Process a NumberActividad · 0 min
  • Quiz, Day 11Cuestionario · 0 min
  • Cheatsheet, Day 11Lectura · 0 min
  • How to use Role Play for Checking Your SkillsVideo · 4 min
  • Section Skill CheckProyecto · 0 min
  • Section 11 Source CodeLectura · 0 min
UNIDAD 12 - Supercharge Functions with Arguments (Function Arguments, Defaults) · 18 lecciones

UNIDAD 12 - Supercharge Functions with Arguments (Function Arguments, Defaults)

  • Recap of YesterdayVideo · 1 min
  • Optimizing the CodeVideo · 9 min
  • Optimizing the Code FurtherVideo · 13 min
  • Code ExperimentsVideo · 6 min
  • Bonus ExampleVideo · 12 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • Liters Converter FunctionActividad · 0 min
  • Password Validation FunctionActividad · 0 min
  • Average FunctionActividad · 0 min
  • Greeting FunctionActividad · 0 min
  • Concatenation FunctionActividad · 0 min
  • Greeting Function and String ManipulationActividad · 0 min
  • Programming Tool/Concept of the Day: The Learn-to-Program CurveVideo · 3 min
  • Quiz, Day 12Cuestionario · 0 min
  • Cheatsheet, Day 12Lectura · 0 min
  • Section Skill CheckProyecto · 0 min
  • Section 12 Source CodeLectura · 0 min
UNIDAD 13 - Flexible Functions (Default Arguments, Docstrings) · 17 lecciones

UNIDAD 13 - Flexible Functions (Default Arguments, Docstrings)

  • Recap of YesterdayVideo · 1 min
  • Optimizing the CodeVideo · 12 min
  • Documenting the CodeVideo · 7 min
  • Code ExperimentsVideo · 4 min
  • Bonus ExampleVideo · 9 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • Age FunctionActividad · 0 min
  • Split FunctionActividad · 0 min
  • Square Area FunctionActividad · 0 min
  • Temperature CheckerActividad · 0 min
  • Password Length CheckerActividad · 0 min
  • Programming Tool/Concept of the Day: Python Versions ExplainedVideo · 7 min
  • Quiz, Day 13Cuestionario · 0 min
  • Cheatsheet, Day 13Lectura · 0 min
  • Section Skill CheckProyecto · 0 min
  • Section 13 Source CodeLectura · 0 min
UNIDAD 14 - Modularize for Maintainability (Local Modules) · 14 lecciones

UNIDAD 14 - Modularize for Maintainability (Local Modules)

  • Recap of YesterdayVideo · 1 min
  • Organising the Code in ModulesVideo · 13 min
  • Code ExperimentsVideo · 9 min
  • Bonus ExamplesVideo · 8 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • Water State CheckerActividad · 0 min
  • Water State Checker AdvancedActividad · 0 min
  • Advanced Temperature FunctionActividad · 0 min
  • Programming Tool/Concept of the Day: What is Version Control and Git?Video · 9 min
  • Quiz, Day 14Cuestionario · 0 min
  • Cheatsheet, Day 14Lectura · 0 min
  • Section Skill CheckProyecto · 0 min
  • Section 14 Source CodeLectura · 0 min
UNIDAD 15 - Built-in Tools & Version Control (Standard Modules, Git) · 11 lecciones

UNIDAD 15 - Built-in Tools & Version Control (Standard Modules, Git)

  • Recap of YesterdayVideo · 2 min
  • Add a "Date" FeatureVideo · 15 min
  • Code ExperimentsVideo · 20 min
  • Bonus ExampleVideo · 35 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • Programming Tool/Concept of the Day: Using GitVideo · 20 min
  • Quiz, Day 15Cuestionario · 0 min
  • Cheatsheet, Day 15Lectura · 0 min
  • Section Skill CheckProyecto · 0 min
  • Section 15 Source CodeLectura · 0 min
UNIDAD 16 - Expand with External Libraries (Third-Party Modules, GitHub) · 12 lecciones

UNIDAD 16 - Expand with External Libraries (Third-Party Modules, GitHub)

  • Recap of YesterdayVideo · 2 min
  • Difference Between Frontend and BackendVideo · 5 min
  • Create a Desktop Graphical User Interface (GUI)Video · 28 min
  • Code ExperimentsVideo · 5 min
  • Bonus ExampleVideo · 9 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • Programming Tool of the Day: Using GithubVideo · 11 min
  • Quiz, Day 16Cuestionario · 0 min
  • Cheatsheet, Day 16Lectura · 0 min
  • Section Skill CheckProyecto · 0 min
  • Section 16 Source CodeLectura · 0 min
UNIDAD 17 - App 1: Build a Task Manager (Desktop GUI Version) · 11 lecciones

UNIDAD 17 - App 1: Build a Task Manager (Desktop GUI Version)

  • Recap of YesterdayVideo · 2 min
  • Implementing an "Add Todo" ButtonVideo · 21 min
  • Implementing an "Edit" ButtonVideo · 22 min
  • Code ExperimentsVideo · 8 min
  • Bonus ExampleVideo · 28 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • Coding Exercise 2Actividad · 0 min
  • Quiz, Day 17Cuestionario · 0 min
  • Cheatsheet, Day 17Lectura · 0 min
  • Section 17 Source CodeLectura · 0 min
UNIDAD 18 - App 1: Build a Task Manager (Desktop GUI- Adding Advanced Features) · 11 lecciones

UNIDAD 18 - App 1: Build a Task Manager (Desktop GUI- Adding Advanced Features)

  • Recap of YesterdayVideo · 1 min
  • Implement "Complete" and "Exit" ButtonsVideo · 8 min
  • Final TouchesVideo · 16 min
  • Code ExperimentsVideo · 6 min
  • Bonus ExampleVideo · 22 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • Programming Tool/Concept of the Day: Creating a Standalone ExecutableVideo · 24 min
  • Quiz, Day 18Cuestionario · 0 min
  • Cheatsheet, Day 18Lectura · 0 min
  • Section 18 Source CodeLectura · 0 min
UNIDAD 19 - App 1: Build a Task Manager (Web App Version) · 13 lecciones

UNIDAD 19 - App 1: Build a Task Manager (Web App Version)

  • Recap of YesterdayVideo · 1 min
  • Create a Web AppVideo · 15 min
  • Adding New Todo Items on the Web AppVideo · 13 min
  • Completing Todo Items on the Web AppVideo · 9 min
  • Deploying the Web App to the CloudVideo · 12 min
  • Code ExperimentsVideo · 12 min
  • Bonus ExampleVideo · 12 min
  • Practice: Concept Check (3 quick questions)Lectura · 0 min
  • Practice: Bug Hunt (3 broken programs)Lectura · 0 min
  • Programming Tool/Concept of the Day: Web App Deployment - Deploy to HerokuVideo · 16 min
  • Quiz, Day 19Cuestionario · 0 min
  • Cheatsheet, Day 19Lectura · 0 min
  • Section 19 Source CodeLectura · 0 min
UNIDAD 20 - Summary of Python Basics · 8 lecciones

UNIDAD 20 - Summary of Python Basics

  • TodayVideo · 2 min
  • PyCharm ReviewVideo · 5 min
  • Objects, Variables, FunctionsVideo · 13 min
  • Methods, Lists, Tuples, DictionariesVideo · 18 min
  • Code Blocks, f-stringsVideo · 7 min
  • External Files, List ComprehensionsVideo · 7 min
  • Errors, Comments, Modules, Libraries, Web and Desktop GUIsVideo · 15 min
  • Programming Tool/Concept of the Day: Using the Command LineVideo · 15 min
UNIDAD 21 - App 2: Create a PDF Generator Tool with Python · 10 lecciones

UNIDAD 21 - App 2: Create a PDF Generator Tool with Python

  • TodayVideo · 4 min
  • Create a Multipage PDFVideo · 16 min
  • From CSV to PDFVideo · 16 min
  • Add More Pages to PDFVideo · 9 min
  • Add FooterVideo · 9 min
  • Tip: RangesLectura · 0 min
  • Student Project: Lined PDFVideo · 1 min
  • Student Project: SolutionVideo · 4 min
  • Programming Tool/Concept of the Day: PEP 8 Style GuideVideo · 17 min
  • App 2 Source CodeLectura · 0 min
UNIDAD 22 - App 3: Build an Email News App (Part 1: Connect to a News API and Send Emails) · 6 lecciones

UNIDAD 22 - App 3: Build an Email News App (Part 1: Connect to a News API and Send Emails)

  • TodayVideo · 1 min
  • Programming Tool/Concept of the Day: API ExplainedVideo · 6 min
  • URL Requests with PythonVideo · 9 min
  • Getting Data from an APIVideo · 10 min
  • Student Project: Email the API DataVideo · 3 min
  • Student Project: SolutionVideo · 8 min
UNIDAD 23 - App 3: Build an Email News App (Part 2: App Refinements) · 7 lecciones

UNIDAD 23 - App 3: Build an Email News App (Part 2: App Refinements)

  • TodayVideo · 1 min
  • Five Program RefinementsVideo · 10 min
  • Download a File from the WebVideo · 5 min
  • Student Project: Astronomy Image of the DayVideo · 2 min
  • Student Project: SolutionVideo · 3 min
  • Programming Tool/Concept of the Day: Using PythonAnywhere PaaSVideo · 10 min
  • App 3 Source CodeLectura · 0 min
UNIDAD 24 - App 4: Create a Weather API (Part 1: API Setup & JSON Serving) · 7 lecciones

UNIDAD 24 - App 4: Create a Weather API (Part 1: API Setup & JSON Serving)

  • TodayVideo · 3 min
  • Programming Tool/Concept of the Day: HTML TutorialVideo · 13 min
  • Build a Website with FlaskVideo · 13 min
  • Build a REST APIVideo · 15 min
  • Running Multiple AppsVideo · 2 min
  • Student Project: Build a Dictionary API (Part 1)Video · 4 min
  • Student Project: SolutionVideo · 2 min
UNIDAD 25 - App 4: Create a Weather API (Part 2: Refining the API Output) · 6 lecciones

UNIDAD 25 - App 4: Create a Weather API (Part 2: Refining the API Output)

  • TodayVideo · 2 min
  • Programming Tool of the Day: Jupyter Lab TutorialVideo · 14 min
  • Pandas In-Depth: Exploring 200 Years of European Weather DataVideo · 40 min
  • API that Returns Weather Temperature DataVideo · 15 min
  • Student Project: Build a Thesaurus API (Part 2)Video · 1 min
  • Student Project: SolutionVideo · 4 min
UNIDAD 26 - App 4: Create a Weather API (Part 3: Final Polish & Testing) · 7 lecciones

UNIDAD 26 - App 4: Create a Weather API (Part 3: Final Polish & Testing)

  • TodayVideo · 1 min
  • Programming Tool/Concept of the Day: Data Analysis and Visualization TheoryVideo · 5 min
  • Show Data Table on the WebpageVideo · 9 min
  • URL Endpoints for All Data and Annual DataVideo · 15 min
  • Student Project: Analyze a Wine Tasting DatasetVideo · 6 min
  • Student Project: SolutionVideo · 4 min
  • Source Code of App 6: Create a Weather APILectura · 0 min
UNIDAD 27 - App 5: Build a Weather Forecast Dashboard (Part 1: Data & Charts) · 5 lecciones

UNIDAD 27 - App 5: Build a Weather Forecast Dashboard (Part 1: Data & Charts)

  • TodayVideo · 3 min
  • Coding the User InterfaceVideo · 12 min
  • Plotting Data DynamicallyVideo · 13 min
  • Student Project: Build a Happiness Data AppVideo · 4 min
  • Student Project: SolutionVideo · 5 min
UNIDAD 28 - App 5: Build a Weather Forecast Dashboard (Part 2: Filtering and New Features) · 7 lecciones

UNIDAD 28 - App 5: Build a Weather Forecast Dashboard (Part 2: Filtering and New Features)

  • TodayVideo · 1 min
  • Getting Raw Forecast DataVideo · 14 min
  • Filtering Forecast DataVideo · 14 min
  • Add Sky ConditionsVideo · 17 min
  • Student Project: Fix the Weather Forecast AppVideo · 2 min
  • Student Project: SolutionVideo · 3 min
  • Source Coe of App 7: Build a Weather Forecast DashboardLectura · 0 min
UNIDAD 29 - App 6: Analyze eBooks with Python & NLP (Part 1: Text Extraction) · 8 lecciones

UNIDAD 29 - App 6: Analyze eBooks with Python & NLP (Part 1: Text Extraction)

  • TodayVideo · 1 min
  • Programming Tool/Concept of the Day: Regular Expressions (Regex)Video · 3 min
  • Get Number of ChaptersVideo · 16 min
  • Extract Certain SentencesVideo · 11 min
  • Most Common WordsVideo · 12 min
  • Student Project: Regular ExpressionsVideo · 3 min
  • Student Project: SolutionVideo · 6 min
  • Source CodeLectura · 0 min
UNIDAD 30 - App 6: Analyze eBooks with Python (Part 2: Sentiment Analysis) · 7 lecciones

UNIDAD 30 - App 6: Analyze eBooks with Python (Part 2: Sentiment Analysis)

  • TodayVideo · 1 min
  • Most Used Non-Stop WordsVideo · 9 min
  • Most Positive/Negative ChaptersVideo · 11 min
  • Student Project: Visualise Your Mood Across DaysVideo · 2 min
  • Student Project: SolutionVideo · 4 min
  • Programming Tool/Concept of the Day: Applications of NLPVideo · 5 min
  • App 8 Source CodeLectura · 0 min
UNIDAD 31 - App 7: Build a Webcam Motion Alert App (Part 1: Detect Motion with OpenCV) · 7 lecciones

UNIDAD 31 - App 7: Build a Webcam Motion Alert App (Part 1: Detect Motion with OpenCV)

  • TodayVideo · 2 min
  • Programming Tool/Concept of the Day: Images from a Computer Science PerspectiveVideo · 11 min
  • Capture Webcam VideoVideo · 14 min
  • Program the Webcam to Detect Moving ObjectsVideo · 27 min
  • Trigger Action when the Webcam Detects an ObjectVideo · 11 min
  • Student Project: Add Live Timestamp to Webcam VideoVideo · 5 min
  • Student Project: SolutionVideo · 2 min
UNIDAD 32 - App 7: Build a Webcam Motion Alert App (Part 2: Email Alerting System) · 8 lecciones

UNIDAD 32 - App 7: Build a Webcam Motion Alert App (Part 2: Email Alerting System)

  • TodayVideo · 1 min
  • Extract Images from Webcam VideoVideo · 9 min
  • Send Email with AttachmentVideo · 14 min
  • Send Email Attachment when Webcam Detects an ObjectVideo · 6 min
  • Threading in PythonVideo · 11 min
  • Programming Tool/Concept of the Day: Applications of Image ProcessingVideo · 3 min
  • Practice: Coding Exercises (3 exercises)Lectura · 0 min
  • App 7 Source CodeLectura · 0 min
UNIDAD 33 - App 8: Web Scrape Music Events (Part 1: Fetch & Parse HTML) · 9 lecciones

UNIDAD 33 - App 8: Web Scrape Music Events (Part 1: Fetch & Parse HTML)

  • TodayVideo · 2 min
  • Programming Tool/Concept of the Day: Web ScrapingVideo · 4 min
  • Scraping a WebpageVideo · 10 min
  • Extracting Data from the Scraped ContentVideo · 11 min
  • Storing the Extracted Data in Text FilesVideo · 12 min
  • Send Email when New Event is Found on the WebsiteVideo · 5 min
  • Running the Program Non-StopVideo · 2 min
  • Student Project: Scrape Temperature DataVideo · 3 min
  • Student Project: SolutionVideo · 4 min
UNIDAD 34 - App 8: Web Scrape Music Events (Part 2: Clean & Store the Data) · 7 lecciones

UNIDAD 34 - App 8: Web Scrape Music Events (Part 2: Clean & Store the Data)

  • TodayVideo · 1 min
  • Programming Tool/Concept of the Day: SQL DatabasesVideo · 17 min
  • Select, Add, and Delete SQL DataVideo · 12 min
  • Storing the App Data in an SQL DatabaseVideo · 17 min
  • Student Project: Store Temperature Data in SQL DatabaseVideo · 3 min
  • Student Project: SolutionVideo · 5 min
  • App 10 Source CodeLectura · 0 min
UNIDAD 35 - Introduction to Object-Oriented Programming (OOP) · 6 lecciones

UNIDAD 35 - Introduction to Object-Oriented Programming (OOP)

  • TodayVideo · 3 min
  • Classes and Object Oriented ProgrammingVideo · 14 min
  • Class init and selfVideo · 14 min
  • Student ProjectLectura · 0 min
  • Student Project: SolutionLectura · 0 min
  • Practice: Coding Exercises (3 exercises)Lectura · 0 min
UNIDAD 36 - App 9: Hotel Booking System with OOP (Part 1: Classes & Reservation) · 9 lecciones

UNIDAD 36 - App 9: Hotel Booking System with OOP (Part 1: Classes & Reservation)

  • TodayVideo · 1 min
  • Programming Tool/Concept of the Day: Class vs InstanceVideo · 4 min
  • Planning the App in OOP StyleVideo · 4 min
  • Code the ClassesVideo · 4 min
  • Create InstancesVideo · 9 min
  • Implement the Methods of the Hotel ClassVideo · 12 min
  • Implement the Methods of the Reservation Ticket ClassVideo · 9 min
  • Student ProjectVideo · 3 min
  • Student Project: SolutionVideo · 4 min
UNIDAD 37 - App 9: Hotel Booking System with OOP (Part 2: Class Inheritance and Payments) · 6 lecciones

UNIDAD 37 - App 9: Hotel Booking System with OOP (Part 2: Class Inheritance and Payments)

  • TodayVideo · 1 min
  • Credit Card FeatureVideo · 17 min
  • Secure Credit Card FeatureVideo · 14 min
  • Overwriting Parent MethodsVideo · 4 min
  • Student Project - Spa Hotel ClassVideo · 4 min
  • Student Project: SolutionVideo · 3 min
UNIDAD 38 - App 9: Hotel Booking System with OOP (Part 3: Various Method Types) · 9 lecciones

UNIDAD 38 - App 9: Hotel Booking System with OOP (Part 3: Various Method Types)

  • TodayVideo · 1 min
  • Instance Variables Vs. Class VariablesVideo · 7 min
  • Instance Methods Vs. Class MethodsVideo · 6 min
  • PropertiesVideo · 7 min
  • Static MethodsVideo · 3 min
  • Magic MethodsVideo · 13 min
  • Abstract Classes and Abstract MethodsVideo · 8 min
  • Practice: Coding Exercises (3 exercises)Lectura · 0 min
  • App 11 Source CodeLectura · 0 min
UNIDAD 39 - App 10: Code Review: The Mario Game in OOP Style · 7 lecciones

UNIDAD 39 - App 10: Code Review: The Mario Game in OOP Style

  • TodayVideo · 2 min
  • Programming Tool of the Day - CollaboratingVideo · 11 min
  • Setting up the Project LocallyVideo · 5 min
  • Inspecting the Project StructureVideo · 10 min
  • Inspecting the CodeVideo · 15 min
  • Practice: Coding Exercises (3 exercises)Lectura · 0 min
  • App 12 Source CodeLectura · 0 min
UNIDAD 40 - App 11: Build an AI News Summarizer Automation · 11 lecciones

UNIDAD 40 - App 11: Build an AI News Summarizer Automation

  • What We Will BuildVideo · 4 min
  • How do LLMs Connect to AppsVideo · 4 min
  • Setting up Langchain and an LLM ModelVideo · 5 min
  • Using LLMs with Python ExampleVideo · 12 min
  • LLM Token Limits and PricesVideo · 7 min
  • Revision of the Existing News Email ProgramVideo · 4 min
  • Getting AI News Summary and AnalysisVideo · 9 min
  • Sending the Email with AI News SummaryVideo · 4 min
  • Storing Sensitive Data SecurelyVideo · 9 min
  • Practice: Coding Exercises (3 exercises)Lectura · 0 min
  • App 4 Source CodeLectura · 0 min
UNIDAD 41 - App 12: Build an AI Agent with Python and LangChain V1 · 10 lecciones

UNIDAD 41 - App 12: Build an AI Agent with Python and LangChain V1

  • IntroductionVideo · 3 min
  • Setting Things UpVideo · 5 min
  • Building an AI Agent - Gemini ModelVideo · 16 min
  • Downloading and Installing Local LLM models with OllamaVideo · 5 min
  • Building an AI Agent that Uses Local AI ModelsVideo · 5 min
  • Adding the Web InterfaceVideo · 9 min
  • Implementing Continuous ConversationsVideo · 9 min
  • Adding Agent Web Search CapabilityVideo · 6 min
  • Practice: Coding Exercises (3 exercises)Lectura · 0 min
  • Source Code of App 5: Build an AI Agent with Python and LangChain V1Lectura · 0 min
UNIDAD 42 - App 13: Student Management System with SQLite (Part 1: GUI Setup) · 6 lecciones

UNIDAD 42 - App 13: Student Management System with SQLite (Part 1: GUI Setup)

  • TodayVideo · 3 min
  • Project RequirementsVideo · 2 min
  • Sketching a PrototypeVideo · 5 min
  • Introduction to PyQt6 GUIsVideo · 31 min
  • Student Project - Speed Calculator GUIVideo · 2 min
  • SolutionVideo · 3 min
UNIDAD 43 - App 13: Student Management System with SQLite (Part 2: CRUD Operations) · 7 lecciones

UNIDAD 43 - App 13: Student Management System with SQLite (Part 2: CRUD Operations)

  • TodayVideo · 1 min
  • Add a Menu Bar to the GUIVideo · 9 min
  • Creating a Table StructureVideo · 4 min
  • Populate SQL Table with DataVideo · 13 min
  • Inserting New Database RecordsVideo · 19 min
  • Student Project - Implement the Search FunctionalityVideo · 2 min
  • SolutionVideo · 8 min
UNIDAD 44 - App 13: Student Management System with SQLite (Part 3: Connect GUI to SQL) · 9 lecciones

UNIDAD 44 - App 13: Student Management System with SQLite (Part 3: Connect GUI to SQL)

  • TodayVideo · 1 min
  • Add a ToolbarVideo · 8 min
  • Add a Status BarVideo · 12 min
  • Create an Edit DialogVideo · 21 min
  • Create a Delete DialogVideo · 12 min
  • Create an About DialogVideo · 5 min
  • Programming Skill of the Day - Code RefactoringVideo · 10 min
  • Practice: Coding Exercises (3 exercises)Lectura · 0 min
  • App 13 Source CodeLectura · 0 min
UNIDAD 45 - App 14: Build a Student Database with MySQL · 9 lecciones

UNIDAD 45 - App 14: Build a Student Database with MySQL

  • TodayVideo · 1 min
  • MySQL vs SQLiteVideo · 6 min
  • Installing MySQL on WindowsVideo · 8 min
  • Installing MySQL on MacVideo · 9 min
  • Installing MySQL on LinuxVideo · 4 min
  • Programming Skill of the Day - MySQL Command Line TutorialVideo · 12 min
  • Implement MySQL in PythonVideo · 12 min
  • Practice: Coding Exercises (3 exercises)Lectura · 0 min
  • App 14 Source CodeLectura · 0 min
UNIDAD 46 - App 15: Web Automation with Selenium in a GUI · 9 lecciones

UNIDAD 46 - App 15: Web Automation with Selenium in a GUI

  • TodayVideo · 4 min
  • Installing the ToolsVideo · 7 min
  • Automating Website LoginVideo · 16 min
  • Automating Form Filling and Submission on WebsiteVideo · 12 min
  • Automating File DownloadingVideo · 8 min
  • Refactoring the Code to OOP (Optional)Video · 14 min
  • Building a Desktop GUI for the Web Automtion Tool (Optional)Video · 23 min
  • Practice: Coding Exercises (3 exercises)Lectura · 0 min
  • App 15 Source CodeLectura · 0 min
UNIDAD 47 - App 16: Flask Web App (Part 1: App Frontend) · 5 lecciones

UNIDAD 47 - App 16: Flask Web App (Part 1: App Frontend)

  • TodayVideo · 3 min
  • Creating the App StructureVideo · 6 min
  • Connecting the Python Backend to the HTML PartVideo · 5 min
  • Building the FormVideo · 17 min
  • Bootstrap StyleVideo · 13 min
UNIDAD 48 - App 16: Flask Web App (Part 2: App Backend) · 8 lecciones

UNIDAD 48 - App 16: Flask Web App (Part 2: App Backend)

  • TodayVideo · 1 min
  • Getting the User DataVideo · 14 min
  • Creating a DatabaseVideo · 11 min
  • Storing the User Data in the DatabaseVideo · 7 min
  • Showing Submission NotificationVideo · 7 min
  • Sending a Confirmation EmailVideo · 10 min
  • Practice: Coding Exercises (3 exercises)Lectura · 0 min
  • App 16 Source CodeLectura · 0 min
UNIDAD 49 - App 17: Django Web App (Part 1: Setup & Models) · 4 lecciones

UNIDAD 49 - App 17: Django Web App (Part 1: Setup & Models)

  • TodayVideo · 2 min
  • Setting up a Django Project and an AppVideo · 9 min
  • Setting up Database ModelsVideo · 13 min
  • Creating a View and a TemplateVideo · 11 min
UNIDAD 50 - App 17: Django Web App (Part 2: Forms, Database, and Emailing) · 5 lecciones

UNIDAD 50 - App 17: Django Web App (Part 2: Forms, Database, and Emailing)

  • TodayVideo · 1 min
  • Code the HTML of the Application FormVideo · 8 min
  • Creating a Form ModelVideo · 12 min
  • Store the Data in the DatabaseVideo · 5 min
  • Send an Email with DjangoVideo · 9 min
UNIDAD 51 - App 17: Django Web App (Part 3: Admin Panel & Final Features) · 7 lecciones

UNIDAD 51 - App 17: Django Web App (Part 3: Admin Panel & Final Features)

  • TodayVideo · 1 min
  • Creating an Admin InterfaceVideo · 7 min
  • Customizing the Admin InterfaceVideo · 6 min
  • Creating a Base TemplateVideo · 12 min
  • Adding the Navigation BarVideo · 7 min
  • Practice: Coding Exercises (3 exercises)Lectura · 0 min
  • App 17 Source Code:Lectura · 0 min
UNIDAD 52 - App 18: Food Ordering App with Django (Part 1: Setting Up) · 4 lecciones

UNIDAD 52 - App 18: Food Ordering App with Django (Part 1: Setting Up)

  • TodayVideo · 4 min
  • Creating the App QR CodeVideo · 4 min
  • Setup a Django Project and AppVideo · 4 min
  • Creating the Database ModelVideo · 19 min
UNIDAD 53 - App 18: Food Ordering App with Django (Part 2: Class-Based Views and Context) · 3 lecciones

UNIDAD 53 - App 18: Food Ordering App with Django (Part 2: Class-Based Views and Context)

  • TodayVideo · 1 min
  • Creating Class-Based ViewsVideo · 23 min
  • Context in DjangoVideo · 6 min
UNIDAD 54 - App 18: Food Ordering App with Django (Part 3: Admin Interface and Bootstrap) · 8 lecciones

UNIDAD 54 - App 18: Food Ordering App with Django (Part 3: Admin Interface and Bootstrap)

  • TodayVideo · 1 min
  • Creating an Admin Interface and Adding DataVideo · 10 min
  • Jinja For LoopsVideo · 13 min
  • Jinja If ConditionalsVideo · 9 min
  • Adding Dynamic LinksVideo · 10 min
  • Adding BootstrapVideo · 13 min
  • Practice: Coding Exercises (3 exercises)Lectura · 0 min
  • App 18 Source CodeLectura · 0 min
UNIDAD 55 - App 19: Build a Movie Recommendation System (Part 1: Exploring the Dataset) · 5 lecciones

UNIDAD 55 - App 19: Build a Movie Recommendation System (Part 1: Exploring the Dataset)

  • TodayVideo · 2 min
  • Three Types of Recommendation SystemsVideo · 4 min
  • The Movies DatasetVideo · 6 min
  • Project Setup on DeepnoteVideo · 7 min
  • Popularity-Based Recommendation ModelVideo · 20 min
UNIDAD 56 - App 19: Build a Movie Recommendation System (Part 2: ML Deep Down) · 8 lecciones

UNIDAD 56 - App 19: Build a Movie Recommendation System (Part 2: ML Deep Down)

  • TodayVideo · 1 min
  • Term Frequency and Inverse Document FrequencyVideo · 17 min
  • Similarity MatrixVideo · 7 min
  • Extracting Most Similar MoviesVideo · 19 min
  • Collaborative Filtering with Machine LearningVideo · 4 min
  • Training and Using the Model to PredictVideo · 14 min
  • Practice: Coding Exercises (3 exercises)Lectura · 0 min
  • App 19 Source CodeLectura · 0 min
UNIDAD 57 - App 20: Build and Publish a Python Package · 8 lecciones

UNIDAD 57 - App 20: Build and Publish a Python Package

  • TodayVideo · 1 min
  • Description of the PackageVideo · 2 min
  • Preparing the Code of the PackageVideo · 11 min
  • Testing the PackageVideo · 12 min
  • Uploading the Package to PyPiVideo · 13 min
  • Practice: Coding Exercises (3 exercises)Lectura · 0 min
  • App 20 Source CodeLectura · 0 min
  • Bonus LectureLectura · 0 min
Certificado oficial

Tu certificado lo emite la SEP, no solo una plataforma

Al demostrar la competencia recibes un certificado emitido por la Secretaría de Educación Pública a través del Gobierno del Estado de México: un documento oficial que puedes presentar con confianza ante cualquier empleador o institución.

Tu certificado con INEC

  • Lo emite la Secretaría de Educación Pública (SEP), a través del Gobierno del Estado de México
  • Documento oficial con folio verificable en línea
  • Lo otorga la Universidad Tecnológica Fidel Velázquez

Otras plataformas en línea

  • Constancia privada emitida por la misma plataforma
  • Solo acredita horas cursadas o asistencia
  • Sin respaldo de una autoridad educativa
Cómo funciona

Tu itinerario, de la inscripción al certificado

  1. 1

    Inscripción con pago único

    Pagas $2,800 MXN una sola vez y entras de inmediato al curso.

  2. 2

    Estudias a tu ritmo

    57 unidades con videos, lecturas y actividades, disponibles 24/7 durante 12 meses.

  3. 3

    Cuestionarios por unidad

    19 cuestionarios para comprobar lo aprendido.

  4. 4

    Certificado

    Emitido por la SEP a través del Gobierno del Estado de México, con folio verificable.

Lo que obtienes

Un certificado oficial de la SEP

Muestra del certificado: Python Mega Course: Build 20 Real-World Apps and AI Agents

Muestra · verificable por folio y QR

  • Emitido por la Secretaría de Educación Pública (SEP), a través del Gobierno del Estado de México. No es una constancia privada: es un documento oficial, y ese respaldo marca la diferencia frente a otras plataformas en línea.
  • Contenido impartido por Ardit Sulce | 600,000+ Students.
  • Folio y QR verificables para compartirlo con quien te contrate.
Medios que necesitas
Equipo de cómputo Conexión estable a internet
Pago único

Empieza hoy, a tu ritmo

Un solo pago y acceso inmediato al curso completo durante 12 meses.

  • 57 unidades · 570 lecciones · 60 h
  • 12 meses de acceso
  • 19 cuestionarios de evaluación
  • Certificado emitido por la SEP (Gob. del Estado de México) con folio verificable
Pago único
$2,800MXN
Acceso por 12 meses
Inscribirme Hablar con un asesor
Preguntas frecuentes

Sobre tu inscripción

¿Cómo es el pago?

Un solo pago de $2,800 MXN. No hay mensualidades ni cargos recurrentes.

¿Cuánto tiempo tengo acceso?

12 meses desde tu inscripción, 24/7, para avanzar a tu ritmo.

¿Quién imparte el contenido?

El curso es impartido por Ardit Sulce | 600,000+ Students; INEC gestiona tu inscripción, evaluación y certificado.

¿Qué pasa cuando vence mi acceso?

Puedes renovar tu cuenta tú mismo desde la plataforma, sin trámites ni esperas.

Certificado emitido por la SEP a través del Gobierno del Estado de México · Python Mega Course: Build 20 Real-World Apps and AI Agents

Inscribirme
  INEC es una Marca de SalesPartners Ciudad de México S de RL de CV. Template Design © Learnify LMS. All rights reserved. Terminos y Condiciones Aviso de Privacidad Politica de Devolución
Hide picture