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 covers the fundamentals of Field-Programmable Gate Array (FPGA) design using VHDL. Learn to create digital circuits, implement logic, and simulate designs. Gain hands-on experience with FPGA development, covering synthesis, implementation, and verification. Ideal for hardware engineers and those interested in embedded systems.
Explore Scilab, a free and open-source software for numerical computation. Learn to perform data analysis, simulations, and mathematical modeling. This tutorial covers Scilab's core functionalities, including matrix operations, equation solving, plotting, and scripting. Ideal for students and researchers in science and engineering.
Explore the principles of electrical systems, covering motor control, power distribution, and circuit protection. Learn about three-phase motors, their operation, and control techniques. This bootcamp provides a practical understanding of electrical engineering fundamentals, essential for technicians and engineers seeking to advance their skills.
Explore the fundamentals of computer architecture, focusing on the RISC-V instruction set. This tutorial covers core concepts like registers, memory addressing, and instruction execution. Learn about the design principles behind modern processors and how RISC-V's open-source nature impacts computing innovation. Gain insights into low-level programming and hardware interaction.
This tutorial covers fundamental computer programs and their effective use, designed specifically for beginners. Learn essential computer functions, operating system navigation, file management, and basic software applications. Gain confidence in navigating the digital world and utilizing everyday computing tools. Perfect for those new to technology.
This topic covers C++ programming specifically for Arduino microcontrollers. Learn about data types, control flow, functions, and working with Arduino libraries. Explore embedded systems programming, hardware interaction, and building interactive projects. Suitable for those with basic C++ knowledge and a desire to create functional devices.
This topic focuses on preparing for automation professional certifications. It encompasses practice exams, key concepts, and comprehensive knowledge needed to succeed in automation roles. Covers a broad range of automation techniques and tools, helping users validate their skills and expertise. Ideal for career advancement.
This topic covers building RESTful APIs using Java, Spring, and JPA. Learn to design, develop, and test robust APIs for data management and application integration. Explore techniques for handling requests, responses, and data serialization. Includes practical examples using MySQL and Postman for testing.
Explore the core concepts of operating systems development. This topic covers process management, memory management, file systems, and system calls. Learn to build a basic OS kernel and understand the underlying principles of how software interacts with hardware. A challenging, rewarding project for advanced developers.
This topic covers building full-stack applications using Java, React, and Spring Boot. Learn to develop both the front-end user interface with React and the back-end application logic with Spring Boot. Includes deployment strategies, API design, and database integration. Ideal for aspiring full-stack Java developers.
Explore practical projects using microcontrollers like AVR. Learn to interface with hardware, control LEDs, read button inputs, and implement basic control logic. This beginner-friendly topic provides hands-on experience with embedded systems and electronics, ideal for hobbyists and aspiring engineers. Build your first interactive electronic device!
This topic covers SCADA (Supervisory Control and Data Acquisition) systems, focusing on their architecture, components, and applications in industrial automation. Learn about HMI (Human Machine Interface) design, data acquisition, control strategies, and communication protocols used in SCADA environments. Gain practical skills in programming and configuring SCADA systems for real-time monitoring and control.
Explore the fundamentals of digital logic circuits, including AND, OR, NOT gates, flip-flops, and basic combinational and sequential logic designs. This course provides a practical introduction to how digital circuits function, essential for hardware design and embedded systems. Learn to build and analyze simple logic systems.
Learn to build and test electronic circuits using solderless breadboards (protoboards). This tutorial covers wiring techniques, circuit design basics, and troubleshooting common issues. Gain hands-on experience in prototyping electronic projects before committing to permanent soldering. Ideal for hobbyists and makers.
Learn Bash scripting for Linux & Unix! Automate system administration tasks, manage files, and control processes with powerful shell scripts. This course covers Bash syntax, control flow, functions, and advanced scripting techniques. Write efficient and robust scripts in Tamil to streamline your workflow and enhance system efficiency.
Prepare for the AP Computer Science A exam with comprehensive practice. This topic covers core concepts like data types, control flow, object-oriented programming, and algorithms. Includes 500+ questions with detailed explanations to build coding skills and maximize exam performance. Ideal for students aiming to achieve a high score.
Explore the components of a personal computer, from the CPU and GPU to RAM and storage. This tutorial covers compatibility, installation, and troubleshooting, empowering you to build, upgrade, and maintain your own PC. Learn about different hardware types and their impact on performance.
Develop essential communication skills for the technology field. This topic covers clear and concise writing, effective presentations, and active listening in technical contexts. Learn to articulate complex ideas to both technical and non-technical audiences, boosting collaboration and career advancement. Focuses on written and verbal communication.
Explore the power of scripting with Tcl! This comprehensive course covers scripting fundamentals, advanced techniques, and integration with Tcl/Tk for GUI development. Learn to automate tasks, build tools, and create interactive applications. Become proficient in Tcl scripting for diverse applications.
Explore SAPUI5, a powerful framework for building modern web applications within the SAP ecosystem. This topic covers UI design, data binding, routing, and navigation. Learn to create responsive and user-friendly interfaces for SAP Fiori applications. Gain practical skills for developing innovative SAP solutions.
Explore power systems analysis using PSS/E software and Python automation. This topic covers grid modeling, data handling, and efficient analysis techniques. Learn to apply Python for automating tasks in power system simulations and gain practical skills for grid management and optimization. Develop expertise in power flow studies and stability analysis.
Explore Google Apps Script, a JavaScript-based scripting language for automating tasks within Google Workspace. This topic covers spreadsheet automation, code walkthroughs, and leveraging ChatGPT for scripting assistance. Learn to build custom solutions and streamline workflows within Google Sheets, Docs, and more. Ideal for automating repetitive tasks.
This topic focuses on preparing for standardized language proficiency tests like CELPIP. It covers test-taking strategies, vocabulary building, and practice exercises to improve overall language skills. Learn effective techniques to achieve a high score and confidently demonstrate your language abilities. This is designed for individuals aiming to meet specific language requirements for education or immigration.
This topic covers fundamental concepts in civil engineering, focusing on structural analysis, estimation, and practical site execution skills. Learn to utilize software like ETABS for structural analysis and Excel for estimation. Gain hands-on experience in building construction processes, preparing you for real-world site work and project management.
Explore the fundamentals of digital design, focusing on VLSI DFT (Design for Testability). Learn industry-standard methodologies for ensuring chip functionality through test structures and verification flows. Covers test insertion, scan chains, and fault modeling. Gain insights into reliable chip design practices.
Explore network programmability using Python. This topic covers network automation, configuration management, and network device interaction. Learn to build network applications, automate tasks, and integrate with network infrastructure. Gain practical skills for network engineers seeking to leverage Python for efficient network management and control.
Explore the fundamentals of modern electronics, covering sensors, actuators, and embedded systems. This topic delves into the workings of ECUs, CAN bus communication, and Python scripting for applications in electric vehicles, motor control, and advanced driver-assistance systems (ADAS). Learn to interface hardware with software for real-world applications.
Explore electronic components and circuits essential for Arduino projects. Learn about resistors, LEDs, transistors, and how to interface them with Arduino. Covers basic circuit design, troubleshooting techniques, and practical applications for building interactive electronic systems. Develop a strong foundation in hardware for your Arduino endeavors.
This topic covers the skills and practices needed for successful software development within large organizations. Learn about project management methodologies, team collaboration, code quality standards, and navigating complex software development lifecycles. Focuses on building scalable, reliable, and maintainable systems for enterprise-level applications.
Explore the world of augmented reality (AR) development using tools like Zappar and ZapWorks. This topic covers creating interactive experiences, from business cards to 360 photos. Learn to boost engagement and leverage AR for innovative applications. Discover the potential of AR in marketing, education, and beyond.
Explore rapid app development with Replit, Windsurf, and Cursor. This tutorial focuses on building interactive applications quickly, ideal for beginners. Learn to leverage these tools for prototyping and creating functional apps without extensive coding knowledge. Hands-on projects ensure practical application.
Explore fundamental algorithm design techniques like divide and conquer, dynamic programming, and greedy algorithms. Learn to analyze algorithm efficiency using Big O notation. Develop problem-solving skills applicable to coding interviews and real-world applications. This topic covers core algorithmic strategies for optimal code performance.
Explore fundamental techniques in Natural Language Processing (NLP) using Python. This covers text tokenization, stemming, lemmatization, and part-of-speech tagging. Learn how to preprocess text data for various NLP tasks like sentiment analysis, text classification, and information extraction. Gain practical skills for building intelligent text-based applications.
Explore fundamental algorithms and data structures using Python. This comprehensive course covers sorting, searching, trees, graphs, and dynamic programming. Learn to analyze algorithm efficiency and apply them to solve real-world problems. Enhance your problem-solving skills and coding proficiency with practical Python implementations.
Explore Python's application in cryptocurrency trading. Learn data analysis techniques, trading strategies, and backtesting methodologies. This topic covers libraries like Pandas, NumPy, and potentially others for market data handling and algorithmic trading. Develop practical skills for data-driven trading decisions.
This module provides comprehensive training on essential welding processes crucial for the AWS Certified Welding Inspector exam. Learn the fundamentals of Shielded Metal Arc Welding (SMAW), Gas Metal Arc Welding (GMAW), Flux-Cored Arc Welding (FCAW), and Energy-Beam Welding (EGW). Covers techniques, applications, and inspection methods.
This topic covers building custom Linux distributions for embedded systems using Yocto. Learn to configure the build environment, create recipes, and generate images tailored to specific hardware. Gain proficiency in creating optimized, minimal Linux systems for resource-constrained devices. Develop skills in cross-compilation and system integration.
Explore the inner workings of compilers with LLVM. This topic covers building compiler passes, code optimization techniques, and contributing to open-source compiler projects. Learn about intermediate representations, optimization strategies, and the LLVM Pass Manager system. Develop advanced code manipulation skills.
Explore fundamental programming logic using VISUALG, PORTUGOL, and Python. This tutorial guides beginners through algorithmic thinking, control flow, and problem-solving. Learn to design and implement efficient solutions, building a strong foundation for further programming endeavors. Develop skills in creating step-by-step instructions for computers.
Explore LINQ (Language Integrated Query) in C#. This topic covers querying data from various sources like databases and collections. Learn about LINQ syntax, lambda expressions, and how to perform CRUD operations efficiently. Build practical applications with LINQ for data manipulation and retrieval. This tutorial focuses on building a Cine Reservation System.
This topic covers building robust and scalable Web APIs using C# and .NET. Learn to design RESTful APIs, handle requests and responses, implement authentication and authorization, and interact with databases. Focuses on creating backend services for modern applications, essential for full-stack development and cloud deployments.
A comprehensive introduction to Ruby on Rails framework. Learn HTML, Bootstrap, Ruby & Rails from scratch. Build your own local server with Vagrant, VirtualBox & Ubuntu. This tutorial is perfect for beginners looking to develop web applications with a robust and efficient framework. Gain practical skills in web development and deployment.
Explore PL/SQL, Oracle's procedural extension for SQL. This tutorial guides beginners through building database programs, including variables, control structures, functions, and procedures. Learn to develop dynamic database solutions and automate tasks within the Oracle environment. Gain proficiency in PL/SQL fundamentals for efficient database management.
Develop interactive desktop applications using Python and Qt. This tutorial covers GUI design, event handling, and integrating Python logic with user interfaces. Suitable for beginners aiming to build practical, cross-platform desktop software. Learn to create custom widgets and manage application workflows.
Explore MATLAB's powerful capabilities for scientific computing. This course covers data analysis, numerical methods, visualization, and algorithm development. Ideal for engineers, students, and researchers seeking to enhance their analytical and modeling skills. Learn to efficiently solve complex problems with MATLAB's extensive toolboxes and functions.
.NET MAUI enables developers to build applications for multiple platforms (Android, iOS, macOS, Windows) from a single codebase. This tutorial covers the architecture, UI development, data binding, and platform-specific customizations. Learn to leverage .NET MAUI's features for efficient cross-platform development and deploy your apps to a wide range of devices.
Explore Groovy, a dynamic language for the Java Virtual Machine. This topic covers Groovy syntax, data structures, control flow, and its integration with Java. Learn to leverage Groovy's concise code and powerful features for faster Java development. Ideal for Java developers seeking a productive alternative.
Explore advanced JavaScript concepts and modern development techniques. This topic covers ES6+ features, asynchronous programming with async/await, functional programming paradigms, and building interactive user interfaces. Learn to leverage modern JavaScript for robust and scalable web applications. Gain proficiency in contemporary JavaScript best practices.
This topic focuses on applying Python to financial analysis and economic modeling. Learn to use libraries like Pandas, NumPy, and Matplotlib for data manipulation, statistical analysis, and visualization. Covers topics such as financial data scraping, portfolio optimization, risk management, and algorithmic trading. Practical application of Python in finance.
Prepare for standardized tests with our comprehensive vocabulary lessons. This topic covers essential English vocabulary for GMAT, GRE, SAT & TOEFL exams. Learn effective strategies to boost your scores through easy-to-understand lessons and targeted practice. Improve your reading comprehension and overall test performance.