Python 3: Deep Dive (Part 2 - Iterators, Generators)
Master Python's sequences, iterables, and generators! Learn how iterators and context managers simplify code and boost efficiency.
$ Need a web app, AI feature or SaaS built? Hire the devs behind TutorialSearch.io — start a project
Learn programming languages and concepts with comprehensive tutorials covering Python, JavaScript, Java, C++, and more. Master software development, algorithms, data structures, and coding best practices. Perfect for beginners and experienced developers seeking to learn new languages or strengthen their programming fundamentals.
We ship fast, production-grade full-stack apps (Next.js, React, edge infra) — the same stack that powers this site.
Highest rated courses across all topics in this category.
Browse all available topics in Programming Languages
Build engaging mini-games with Python! This topic guides beginners through creating classic games like Flappy Bird and Pong, fostering hands-on programming skills. Learn fundamental concepts like user input, game loops, collision detection, and basic graphics. A fun and practical way to learn Python.
Explore robotics programming with mBlock and mBot. This tutorial provides a quick start guide to using the mBlock platform for coding robots. Learn about the interface, basic blocks, and fundamental concepts of robot control. Suitable for beginners interested in robotics and coding, fostering hands-on learning and problem-solving skills.
This topic covers the theory and practical aspects of building FPV drones. Learn about components like flight controllers, motors, ESCs, and batteries. Explore different drone types like tinywhoops and Cinewhoops. Gain the knowledge to design, assemble, and customize your own drone for aerial adventures.
This topic covers the principles and practical implementation of DevOps pipelines. Learn how to automate software delivery using tools like GitHub Actions, CI/CD best practices, and infrastructure as code. Focuses on streamlining development workflows, improving collaboration, and accelerating release cycles for faster, more reliable software deployment.
This topic covers comprehensive testing strategies for Angular applications. Learn unit testing with tools like Jasmine and Karma, end-to-end testing with Cypress or Protractor, and CI/CD integration for automated testing pipelines. Discover best practices for writing maintainable and reliable Angular tests, ensuring application quality and stability.
Explore MATLAB's fundamentals with expert-led tutorials. Learn core concepts like variables, operators, loops, and functions. Discover data visualization techniques and apply MATLAB for basic data analysis. This topic equips you with the foundational skills to leverage MATLAB for scientific computing and engineering applications.
This topic focuses on developing logical thinking and problem-solving skills through Python programming. It covers implementing algorithms, conditional statements, loops, and data structures to solve various challenges. Ideal for intermediate Python programmers aiming to enhance their computational thinking abilities and build more complex applications.
Explore the world of modern computing with this comprehensive course. Learn about Raspberry Pi, embedded systems, and versatile mini-computers. Build projects, explore coding, and unlock the power of this technology. This topic covers hardware setup, software installation, and project development.
Explore Python development environments with Conda and Pip. Learn to set up virtual environments for project isolation and dependency management. Covers popular IDEs like PyCharm and IDLE, and prepares you for cloud deployment. Essential for building robust and reproducible Python projects.
Explore fundamental design patterns in Python. Learn creational, structural, and behavioral patterns to write more maintainable, flexible, and reusable code. This tutorial covers common patterns like Singleton, Factory, Observer, and Strategy. Improve software design skills and code organization for enhanced project scalability.
Explore fundamental code security principles and techniques using Python. This topic covers common vulnerabilities like injection flaws, cross-site scripting (XSS), and secure coding practices. Learn how to write robust and resilient Python applications, protect against attacks, and ensure data integrity. Build secure systems from the ground up.
This topic explores connecting Arduino projects to the internet. Learn to utilize Wi-Fi modules, MQTT protocols, and cloud platforms to enable remote monitoring and control. Build IoT applications for home automation, environmental sensing, and data logging. Gain practical skills in network communication and data transmission.
This topic focuses on mobile application development frameworks. Learn about Ionic, React Native, and Flutter, covering their architectures, component systems, and development workflows. Explore building cross-platform mobile apps with native-like performance. Gain practical skills for mobile app creation and deployment.
This topic covers essential Python techniques for managing and manipulating data. Learn to work with various data structures like lists, dictionaries, and files. Explore data parsing, cleaning, and transformation using Python libraries. Develop skills for efficient data storage and retrieval, crucial for any Python project.
Unlock the power of Excel with advanced macro techniques! This topic covers VBA programming for Excel, automating tasks, creating custom functions, and building powerful solutions for data analysis and reporting. Learn to streamline workflows and enhance productivity with efficient Excel macros. Practical examples and real-world applications are included.
A beginner-friendly programming course designed for kids, covering Scratch, HTML, Python, and introductory AI concepts. This topic provides a comprehensive foundation in coding, fostering creativity and problem-solving skills. It's ideal for young learners embarking on their first programming adventure, building a versatile skillset for future exploration.
Explore the core principles of Object-Oriented Programming (OOP). This topic covers encapsulation, inheritance, polymorphism, and abstraction. Learn how to design modular, reusable, and maintainable code using OOP concepts. Understand design patterns and apply them to solve real-world programming challenges.
Explore modern manufacturing techniques and processes. This course covers welding processes like GTAW/TIG, CNC machining, robotics in manufacturing, and quality control methods. Learn about automation, precision, and efficiency in contemporary production environments. Gain insights into industry trends and future advancements.
Explore the fundamentals of microcontrollers, essential for embedded systems. This topic covers architecture, programming, peripherals, and interfacing with external hardware. Learn about digital logic, assembly language, and real-time applications. Gain practical skills for designing and implementing microcontroller-based projects.
This topic covers advanced Java programming concepts, including design patterns, concurrency, and performance optimization. It builds upon foundational Java knowledge, focusing on practical application and real-world scenarios. Learn to write efficient, scalable, and maintainable Java code for enterprise applications. Develop expertise in Java's core libraries and frameworks.
Explore programming within Microsoft Dynamics 365 Business Central. This tutorial introduces developers to the platform's development tools and APIs. Learn to customize business processes, automate tasks, and integrate with other systems. Ideal for those seeking to build solutions for ERP and CRM environments.
This topic covers the fundamentals of interpreting technical drawings, focusing on electrical schematics. Learn to identify components, understand symbols, and follow circuit paths. Essential for technicians, electricians, and anyone working with electrical systems. Develop skills for safe and efficient electrical work.
Comprehensive Django practice for interview preparation. This topic covers a wide range of Django concepts, including models, views, templates, forms, and REST APIs. Practice questions with detailed explanations cater to all skill levels, from foundational knowledge to advanced techniques. Boost your Django expertise and interview confidence.
This topic covers developing systems using Delphi and SQL Server. Learn about database design, data access, user management, report generation, and secure login implementation. Focuses on practical application and building robust applications with Delphi's features and SQL Server's capabilities. Ideal for Delphi developers needing database expertise.
Explore essential tools for software development. This topic covers command-line interfaces (CLI), version control with Git, and prompt engineering for enhanced productivity. Learn how to streamline workflows, manage code effectively, and leverage automation for a more efficient development experience. A practical guide for all skill levels.
This topic covers fundamental skills for electrical projects, ideal for beginners. Learn essential concepts, design principles, and practical applications. Includes AutoCAD training for electrical schematics and layouts. A great starting point for those seeking an entry into the electrical field, building a strong foundation for future endeavors.
Learn Pine Script, a domain-specific language for creating trading strategies and indicators on the TradingView platform. This course covers fundamental syntax, data structures, backtesting methodologies, and strategy optimization. Build profitable trading bots and gain insights into financial markets with Pine Script. Master algorithmic trading concepts.
This topic covers building server-side applications with Java. It includes core Java concepts, dependency management with Maven, Spring Dependency Injection (DI), and essential tools like the command line and Git. Learn to design, develop, and deploy robust Java backend systems. A solid foundation for enterprise Java development.
Learn LaTeX for professional document creation. This topic covers LaTeX syntax, environments, and packages for formatting mathematical equations, scientific articles, reports, and other documents. You'll gain skills in structuring content, creating bibliographies, and generating high-quality, publication-ready output. Suitable for academics, researchers, and anyone needing precise document control.
This topic covers leveraging AI tools like ChatGPT and Vrew for content generation. Learn to create online courses for platforms like Udemy and Kindle, repurpose existing content, and streamline content creation workflows. Explore strategies for efficient content production, ideal for professionals seeking a side hustle or business growth.
Explore the powerful MATLAB environment for engineering and scientific applications. This topic covers vehicle performance analysis, data modeling, simulation, and visualization techniques. Learn to apply MATLAB to real-world problems in automotive engineering, including petrol, hybrid, and electric vehicle analysis. Develop practical skills for data-driven decision making.
Develop a comprehensive understanding of building university systems using Java and MySQL. This topic covers database design, Java object-oriented programming, and application development for student records, enrollment, and academic performance tracking. Learn practical skills in data management and software development for educational institutions.
This topic covers introductory coding concepts specifically designed for young children (ages 5-8). It focuses on visual programming languages like ScratchJr, promoting computational thinking, problem-solving, and creativity. The curriculum emphasizes building simple interactive projects, fostering a positive first experience with technology and laying the foundation for future programming endeavors.
Explore industrial communication protocols essential for automation systems. This topic covers Profinet, Profibus, Modbus, AS-Interface, and Ethernet/IP. Learn network configuration, data exchange, and troubleshooting techniques for seamless integration of devices in industrial environments. Gain practical skills for efficient automation.
Explore DirectX 11 programming for creating visually rich games and graphics applications. This course covers rendering pipelines, shaders, textures, and 3D modeling. Learn to implement effects, optimize performance, and build interactive experiences. Ideal for aspiring game developers and graphics programmers.
Prepare for Java job interviews and advance your career. This focused topic covers essential skills including Spring Boot, microservices, REST APIs, DevOps, and cloud technologies. It provides a structured review of key concepts and practical application to help you succeed in the Java job market.
Learn to effectively manage and monitor Robotic Process Automation (RPA) robots using UiPath Orchestrator. This comprehensive course covers key features for efficient automation deployment, scheduling, error handling, and performance monitoring. Gain insights into scaling RPA initiatives and ensuring optimal robot utilization for business process automation.
Explore EtherCAT, a real-time Ethernet communication protocol vital for industrial automation. This topic covers EtherCAT's architecture, communication principles, and practical applications in control systems. Learn about its advantages for high-speed, deterministic data transfer and its role in modern automation workflows. Perfect for engineers and technicians.
Explore the foundational mathematical concepts crucial for computer science. This covers logic, sets, functions, relations, graph theory, and proof techniques. Develop problem-solving skills essential for algorithm design, data structures, and theoretical computer science. Build a strong analytical foundation for your tech career.
This topic covers modern backend development techniques using Node.js, TypeScript, and frameworks like NestJS. Learn about Clean Architecture, RESTful API design, automated testing, and Domain-Driven Design. Build scalable and maintainable backend systems for web and mobile applications. Focuses on advanced concepts for building robust APIs.
A focused guide for educators to effectively teach Python. This topic covers pedagogical approaches, lesson planning, classroom activities, and assessment strategies for Python instruction. Includes resources for curriculum development and student support. Empower educators to confidently deliver Python programming skills to high school students.
Learn to build robust CI/CD (Continuous Integration/Continuous Delivery) pipelines using GitHub Actions. This topic covers automating build, test, and deployment processes. Explore workflow configuration, secrets management, and best practices for efficient software delivery. Gain skills for streamlined development and faster release cycles.
This topic covers essential welding processes like SMAW, PAW, and GTAW, crucial for industrial applications. Learn about welding techniques, safety protocols, and quality control measures. Prepare for certification exams and gain practical skills for welding inspectors and technicians. Focuses on real-world applications and industry standards.
This topic covers the MERN stack (MongoDB, Express.js, React, Node.js), a popular JavaScript-based full-stack development framework. Learn to build robust web applications, understand the architecture of each component, and deploy MERN projects. Gain skills for creating scalable and maintainable applications.
Explore voice control for Arduino projects! This tutorial guides you through building interactive systems that respond to voice commands. Learn about voice recognition libraries, signal processing for Arduino, and practical applications. Perfect for beginners interested in IoT and voice-activated electronics.
A foundational introduction to programming concepts. This topic covers core programming principles using visual tools like Scratch and physical computing platforms like Microbit. Learn fundamental logic, sequencing, loops, and conditional statements. Ideal for absolute beginners seeking a playful and engaging entry point into the world of code.
Sharpen your MATLAB programming skills with targeted practice tests. This topic provides valuable exercises for learning, reviewing concepts, and preparing for MATLAB exams. Improve your proficiency in numerical computation, data analysis, and algorithm development using MATLAB's powerful environment. Enhance problem-solving abilities.
A foundational introduction to C++ programming. This topic covers core concepts like data types, variables, operators, control flow (if/else, loops), functions, and basic input/output. Designed for beginners with no prior programming experience, it provides a solid base for further C++ exploration and more advanced programming endeavors.
Develop strong academic writing skills for essays, research papers, and scholarly communication. This covers clarity, conciseness, argumentation, and effective structure. Learn to craft well-supported claims, cite sources properly, and enhance your overall writing quality for academic success. Improve research abilities.
Learn to develop interactive graphical user interfaces (GUIs) within MATLAB using App Designer. This topic covers creating custom layouts, adding controls (buttons, text boxes, etc.), and connecting UI elements to MATLAB code. Build powerful data analysis and modeling tools with a user-friendly interface.