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
This topic focuses on practical applications of the PIC32 microcontroller. It provides hands-on projects to solidify understanding of PIC32 programming, peripherals, and embedded systems design. Learn to implement real-world solutions, develop robust code, and build a portfolio of PIC32-based engineering projects. Gain experience with hardware integration and debugging techniques.
Explore object-oriented programming (OOP) in Ruby. This tutorial covers classes, objects, inheritance, polymorphism, and encapsulation. Learn to design and build modular, reusable code using Ruby's powerful OOP features. Develop robust applications with a focus on code organization and maintainability.
This topic covers fundamental electrical measurement techniques for both AC and DC circuits. Learn to accurately measure voltage, current, resistance, and continuity using various tools. Explore safety precautions and best practices for reliable and precise electrical testing. Ideal for aspiring electricians and technicians seeking practical skills.
Explore the comprehensive React ecosystem, encompassing core concepts like components and state management, alongside essential libraries such as Redux for state control, React Router for navigation, and Tailwind CSS for styling. This topic provides a deep dive into building robust and scalable React applications, covering best practices and modern development techniques.
Explore the techniques of game hacking, including reverse engineering and programmatic modification of game behavior. Learn to modify games like PUBG and Free Fire. This tutorial covers concepts like memory manipulation, cheat development, and ethical considerations in game modification. Understand the underlying mechanisms of game code.
Develop cross-platform mobile applications using .NET MAUI. This tutorial covers building user interfaces, integrating databases, working with REST APIs, and implementing secure development practices. Learn to create modern, native-like mobile apps for both Android and iOS platforms with a single codebase. Gain proficiency in .NET MAUI's features and development workflow.
Explore techniques for building robust and dependable software. This topic delves into mathematical approaches to code verification, exploring tools and patterns to enhance code correctness and reduce errors. Learn to apply formal methods and testing strategies for more reliable software development. Achieve higher quality and more maintainable code.
Explore foundational programming concepts using older languages like Fortran 77 and Visual Basic 6. This course provides a historical perspective on computing and introduces fundamental programming paradigms. Learn about their syntax, structure, and applications in early software development. Gain insights into the evolution of programming.
Develop robust Windows Services using C# .NET and Visual Studio. This topic covers service lifecycle management, event handling, inter-process communication, and deployment techniques. Learn to create background processes, manage dependencies, and troubleshoot common service issues. Ideal for building scalable and reliable applications.
This topic focuses on building well-rounded programming skills through practical exercises. It covers fundamental concepts, problem-solving techniques, and code optimization. Users will improve their ability to analyze problems, design solutions, and write efficient, maintainable code. Ideal for skill assessment and improvement.
This topic covers developing applications using VB.NET Core 8 with a focus on SQL database interaction. Learn to build Windows Forms applications, connect to SQL databases, perform CRUD operations, and generate reports. The tutorial provides a practical, hands-on approach to database-driven application development using VB.NET.
This topic covers building applications using Python, specifically focusing on chatbot development. Learn to leverage libraries for natural language processing (NLP) and API integration to create interactive conversational agents. Explore chatbot architecture, intent recognition, and response generation. Ideal for Python beginners and those interested in AI applications.
Explore the fundamentals of robot design using Tinkercad, a user-friendly platform. This topic covers circuit building, mechanical design, and basic programming concepts for creating functional robots. Suitable for makers of all skill levels, learn to prototype and bring your robotic ideas to life with this hands-on guide.
This topic covers leveraging AI models like DeepSeek-R1 and Llama for automated API documentation generation. Learn secure, local implementation techniques to create comprehensive and up-to-date API documentation without coding. Gain confidence in building and maintaining robust APIs with AI-powered tools.
Explore building applications with AI assistance! This topic covers leveraging tools like Claude AI and GitHub Copilot to accelerate Flutter development. Learn how to integrate AI for code generation, debugging, and overall app creation. Ideal for developers seeking to enhance productivity and explore the future of software development.
This topic covers the fundamentals of low-level programming concepts. Explore memory management, pointers, bitwise operations, and system calls. Learn to write efficient code that interacts directly with the hardware. Ideal for those seeking a deeper understanding of computer architecture and performance optimization.
This topic covers development and integration with SAP Business One using the Service Layer SDK and DIAPI. Learn to build custom solutions, extend SAP B1 functionality, and integrate with other systems. Explore data access, business logic implementation, and best practices for SAP B1 development. Enhance your SAP B1 expertise.
Explore the Arduino platform, its hardware, and software ecosystem. This covers the Arduino IDE, core programming concepts, and interfacing with various sensors and actuators. Learn about the Arduino community and resources for building interactive projects. Ideal for beginners and those seeking a hands-on introduction to embedded systems.
Explore SAP's financial modules, focusing on account determination (MM-FI). This tutorial provides a detailed explanation of automated account assignment, streamlining financial accounting processes. Learn how to configure and utilize MM-FI for efficient financial management within the SAP ecosystem. Gain practical insights into automating financial data flow.
Explore NumPy, the fundamental package for numerical computation in Python. This topic covers array manipulation, linear algebra, random number generation, and mathematical functions. Practice with interview-style questions to solidify your understanding and enhance your Python data science skills. Learn efficient array operations and optimize your code.
This tutorial covers the fundamentals of Swift programming, a powerful language for iOS and macOS development. Learn about variables, data types, control flow, functions, and object-oriented programming concepts. Build a foundation for creating interactive and engaging applications. Ideal for beginners seeking to enter the Apple ecosystem.
Develop essential language proficiency. This topic covers speaking, listening, reading, and writing skills for various contexts. Learn vocabulary building, grammar rules, and effective communication strategies. Improve fluency and confidence for academic, professional, and personal success. Achieve your language goals with expert guidance.
This topic covers the creation of software licenses using C#. Learn about different license types (e.g., open-source, commercial), legal considerations, and practical implementation within C# applications. Explore code generation techniques and best practices for ensuring proper license enforcement and distribution. This tutorial provides a solid foundation for software developers.
This topic covers the specification and dimensioning of electrical motors, specifically induction motors. Learn to interpret motor nameplates, understand key performance parameters, and apply this knowledge for maintenance and troubleshooting. Covers 3-phase motor characteristics, power ratings, and efficiency considerations.
Focus on enhancing back-end system performance. This topic covers techniques for optimizing code execution, database queries, caching strategies, and server configurations. Learn to identify bottlenecks, apply performance testing methodologies, and improve overall system responsiveness. Develop skills in efficient resource utilization.
This comprehensive course guides you from beginner to advanced Arduino skills. Explore core programming concepts, hardware interfacing, and project development. Learn to build complex systems, optimize code, and troubleshoot effectively. Develop expertise in digital and analog electronics, enabling innovative projects and real-world applications.
Explore MQL5, a powerful language for creating automated trading strategies. This tutorial provides a practical, step-by-step guide to developing Expert Advisors (EAs) for automated trading on the MetaTrader 5 platform. Learn to backtest, optimize, and deploy your trading bots. Start automating your trading today!
Explore creating dynamic visuals using Python! This topic covers Manim, a powerful library for generating mathematical animations. Learn to design engaging educational content, tutorials, and presentations. Discover techniques for visualizing complex concepts and enhancing audience understanding through captivating animations.
Explore data serialization formats like YAML, JSON, and XML. Learn their strengths, weaknesses, and use cases for efficient data storage and transmission. This tutorial covers reading, writing, and parsing data in various formats, crucial for application development and data exchange. Gain proficiency in choosing the right format for your needs.
Explore the world of Monorepos for building scalable applications. This topic covers strategies for managing large codebases, dependency management, build systems, and CI/CD pipelines within a unified repository. Learn best practices for improving developer collaboration and code reuse in complex projects.
A comprehensive course covering Android development using Java. Learn UI design, data storage, networking, and app deployment. Build functional Android applications from scratch. This tutorial is designed for beginners with no prior Android experience, providing a solid foundation in mobile app development.
A foundational guide to GNU/Linux operating systems. Covers core concepts like the command line, file system navigation, user management, and basic system administration tasks. Learn essential commands and navigate the Linux environment effectively. This tutorial is perfect for beginners seeking a solid understanding of Linux fundamentals.
Explore long-range control using Arduino! This topic covers DTMF decoding for remote control without internet or WiFi. Learn about wireless communication techniques, DIY projects, and building custom control systems. Discover the power of Arduino for offline automation and remote operation. Perfect for hobbyists and makers.
A comprehensive course on Python and the Django web framework. Learn to build robust web applications with Django's ORM, templating engine, and security features. Covers project setup, models, views, templates, and deployment. Ideal for aspiring web developers seeking a powerful and efficient framework.
Explore the world of coding with ScratchJr! This topic focuses on introducing young learners (ages 5-7) to fundamental programming concepts through a visual, block-based interface. Children will create interactive stories and games, developing computational thinking skills, problem-solving abilities, and creativity. It's a playful entry point into programming.
Develop custom solutions for Microsoft Office applications. This topic covers building add-ins for Word, Excel, and PowerPoint using VSTO and web technologies. Learn to extend Office functionality, automate tasks, and enhance user productivity with custom components and integrations. Explore different development approaches and deployment strategies.
Develop cross-platform graphical user interfaces (GUIs) and mobile applications using Qt6 and C++. This course covers fundamental Qt concepts, widget creation, event handling, and deployment to Android. Learn to build robust and visually appealing applications with C++ and Qt's powerful framework.
This topic focuses on diagnosing and resolving issues within .NET applications. Learn practical techniques for debugging, error handling, and performance optimization. Covers common .NET errors, logging strategies, and effective troubleshooting workflows. Enhance your .NET development capabilities and build more robust applications.
Develop robust applications using Python and Microsoft Access. This topic covers database design, data manipulation with Python, and building CRUD (Create, Read, Update, Delete) functionalities. Learn to connect Python to Access, manage data efficiently, and create practical database solutions for various applications.
Develop robust backend applications using Kotlin and Spring Boot. This topic covers building RESTful APIs, data persistence with MongoDB, dependency injection, and Spring Boot configuration. Learn to create scalable and maintainable microservices with a focus on practical application and modern development techniques.
Explore SAP ABAP, a powerful programming language for SAP systems. This topic covers core ABAP concepts, data dictionary, report development, and integration with other SAP modules. Learn to build custom solutions, enhance existing functionality, and leverage ABAP for business process automation within the SAP environment. Master ABAP development for SAP applications.
This topic covers the fundamentals of robotics, integrating electronics with programming. Learn about sensors, actuators, microcontrollers, and circuit design. Build and control robotic systems, exploring hardware-software interaction. Ideal for aspiring robotics engineers and hobbyists seeking a practical foundation.
Explore common software design patterns like Singleton, Factory, Observer, and more. Learn when and how to apply these patterns to improve code reusability, maintainability, and scalability. Covers object-oriented programming principles and practical examples in various languages. Develop robust and well-structured applications.
Learn to develop custom modules within the Odoo framework using Python. This topic covers Odoo's architecture, ORM, and how to extend its functionality. You'll gain practical skills in building business applications, automating workflows, and integrating Odoo with other systems. Ideal for developers seeking to leverage Odoo's power.
Explore the embedded systems driving modern electric vehicles (EVs). This topic covers crucial aspects like battery management systems (BMS), motor control algorithms, and vehicle-to-everything (V2X) communication protocols. Learn about the software and hardware architectures powering the next generation of automotive technology and contribute to the future of transportation.
This topic covers building server-side applications with Node.js and Express.js. Learn routing, middleware, REST APIs, and handling HTTP requests. Focuses on creating scalable and efficient backend systems for web and mobile applications. Includes practical examples and best practices for real-world development.
Explore extending geospatial software like QGIS with Python plugins. Learn to develop custom tools for data processing, visualization, and analysis. This topic covers plugin architecture, API usage, and practical examples for enhancing geospatial workflows. Develop custom solutions for specific geographic challenges.
Explore emerging wireless technologies and communication protocols. This topic covers Zigbee implementation with Raspberry Pi, focusing on network architecture, data transmission, and device integration. Learn to build IoT solutions using low-power, long-range communication. Gain practical skills in embedded systems and wireless networking.
Explore system dynamics modeling using Matlab. This tutorial covers the creation, simulation, and analysis of mass-spring-damper systems. Learn to represent real-world systems with differential equations and visualize their behavior. Gain insights into system behavior and control strategies through dynamic modeling techniques.
This topic covers preparation for technical interviews and coding assessments. It includes practice problems, algorithmic problem-solving techniques, and strategies for effectively communicating your solutions. Learn to analyze problems, design efficient algorithms, and write clean, testable code to excel in developer interviews and job applications.