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
Elevate your Python expertise with this intermediate-level course. It covers advanced topics like object-oriented programming, data structures, algorithms, and error handling. Develop robust and efficient Python code for various applications. Assess your skills and solidify your foundation for complex projects.
This topic covers fundamental SQL concepts, including SELECT, INSERT, UPDATE, and DELETE statements. Learn to write efficient queries for data retrieval, manipulation, and management. Explore joins, aggregations, and subqueries to solve complex database problems. Ideal for beginners seeking a solid foundation in SQL.
This topic covers COBOL programming for mainframe systems. Learn to write, compile, and execute COBOL programs using JCL and TSO/ISPF. Focuses on practical application of COBOL, including data handling, file management, and system interaction. Develop skills for working with legacy mainframe applications.
Explore the core languages used for database development. This topic covers procedural languages like PL/SQL, SQL, and T-SQL, essential for data manipulation, stored procedures, and database automation. Learn to write efficient and robust database code for Oracle, SQL Server, and other database systems. Master data interaction techniques.
This topic covers essential techniques for testing electronic components, including SMD and THT. Learn to use a multimeter effectively for diagnosing faults in motherboards and other electronic devices. Gain practical skills for laptop repair and general electronics troubleshooting. This is a hands-on course.
Explore MicroPython programming for the Raspberry Pi Pico. This course covers the fundamentals of MicroPython syntax, peripherals control, and embedded systems programming. Learn to interact with sensors, actuators, and build interactive projects. Ideal for hobbyists and embedded systems developers seeking a practical, hands-on experience.
A foundational course for individuals new to programming concepts. Covers fundamental programming principles, data types, control flow, and basic algorithms. This tutorial provides a gentle introduction to coding logic, setting a strong base for further exploration in various programming languages and domains. Learn to think like a programmer!
Learn to design, build, and manage data pipelines using Apache Airflow. This topic covers DAGs (Directed Acyclic Graphs), tasks, operators, scheduling, and monitoring. Gain practical experience automating data workflows and orchestrating complex data processes. Focus is on hands-on pipeline creation and execution.
This topic covers building applications designed for cloud environments. It explores concepts like microservices, containers (Docker, Kubernetes), serverless computing, and cloud-native architectures. Learn to leverage cloud platforms for scalability, resilience, and efficient resource utilization. Focuses on modern application development for cloud deployments.
This topic focuses on the crucial aspects of package management in software development. Learn how to effectively manage project dependencies using tools like npm, pip, and Maven. Covers version control, dependency resolution, and best practices for building robust and maintainable software projects. Essential for efficient development workflows.
Explore effective Linux user space debugging techniques. This tutorial covers essential tools and strategies for identifying and resolving application issues. Learn to analyze core dumps, use gdb, and interpret system logs. Develop practical skills for troubleshooting and improving application stability on Linux systems.
Explore asynchronous communication using RabbitMQ and EasyNetQ. This topic covers message queues, publish-subscribe patterns, and building scalable applications with reliable messaging. Learn to implement robust event-driven architectures and handle complex data flows. Gain proficiency in integrating messaging into your software projects.
Explore Python's capabilities for audio processing and automation. This topic covers libraries like Librosa and PyAudio for tasks such as audio analysis, manipulation, and generation. Learn to automate audio workflows, create effects, and integrate audio processing into Python applications. Includes practical examples and code snippets.
Explore the fundamentals of automotive electrical systems, focusing on power sources and control circuits. This topic covers practical skills for building and maintaining high-performance automotive electrical setups, including understanding components like SG3524 and 120A power sources. Ideal for auto enthusiasts and professionals seeking hands-on experience.
Explore the fundamentals of Very-Large-Scale Integration (VLSI) design. This topic covers chip architecture, fabrication processes, and integrated circuit development. Learn about clock tree synthesis and gain hands-on experience with building blocks of modern technology. Understand design methodologies and optimization techniques.
This topic covers Microsoft Power Apps, a low-code platform for building custom business applications. Learn to create apps for web and mobile, connect to data sources, automate workflows, and implement business logic. This includes understanding Power Apps components, formulas, and best practices for application development. Prepare for Power Apps job interviews and build practical solutions.
Learn Vim, a powerful text editor, in this concise tutorial. Discover efficient editing techniques, navigation commands, and customization options. This practical guide is perfect for developers seeking to boost their productivity with a modal text editor. Improve coding speed and efficiency with Vim's powerful features.
This topic covers Computer-Aided Design (CAD) and Computer-Aided Manufacturing (CAM) techniques. Learn to design 3D models using software like Siemens NX and Autodesk Inventor, and then prepare those models for manufacturing processes like milling, turning, and wire EDM. Gain practical skills in post-processing and optimizing designs for production.
Explore the core concepts of Linux operating systems. This topic covers system administration, shell scripting, process management, file systems, and networking fundamentals. Learn to navigate and manage Linux environments effectively, troubleshoot common issues, and automate tasks for improved system efficiency. Ideal for system administrators and developers alike.
Explore build systems and automation for C++ projects. This tutorial covers GNU Makefiles, dependency management, and efficient compilation techniques. Learn to streamline your development workflow, automate repetitive tasks, and create robust build processes for both applications and libraries. Essential for C++ development.
Explore computer vision techniques using OpenCV. This topic covers image processing, object detection, video analysis, and machine learning applications. Learn to implement real-time vision systems, analyze images, and build intelligent applications. Gain practical skills in image manipulation, feature extraction, and model deployment.
Develop practical Python applications for diverse real-world scenarios. This topic covers building automated scripts, data analysis pipelines, and user-friendly interfaces. Learn to apply Python's versatility to solve problems in areas like data processing, system administration, and web development. Gain hands-on experience crafting effective and efficient Python solutions.
This topic covers hands-on skills applicable across various fields. Learn practical techniques, problem-solving strategies, and real-world applications. Develop essential abilities for career advancement and personal projects. Focuses on applying knowledge and building competence through practical exercises and projects.
This topic focuses on automating tasks using scripting languages, specifically within the context of Cisco Collaboration (CLAUTO). Learn to write scripts for communication workflows, system administration, and troubleshooting. Covers scripting techniques, CLAUTO APIs, and practical automation examples for enhanced efficiency.
Explore statistical methods and their practical applications. This topic covers descriptive statistics, hypothesis testing, regression analysis, and data interpretation. Learn to apply statistical techniques to solve real-world problems, analyze data effectively, and draw meaningful conclusions. Ideal for data science and research enthusiasts.
This topic covers the principles and practices of designing efficient and scalable databases. Learn about relational database models, normalization techniques, data modeling, and SQL optimization. Explore database design patterns and best practices for various application types. Gain skills in creating robust and well-structured database schemas.
Prepare for the LPI Linux Essentials exam with this comprehensive tutorial. Learn fundamental Linux concepts, command-line navigation, file system management, and basic system administration tasks. Gain confidence in using Linux for everyday computing and open doors to further Linux certifications and career opportunities. This course provides practical skills for beginners.
Explore practical applications of robotics across various industries. This topic covers robot navigation, manipulation, and perception techniques. Learn about real-world use cases in manufacturing, healthcare, logistics, and exploration. Gain insights into robot design, control systems, and software integration for diverse robotic systems.
Develop interactive Discord bots using JavaScript and the Discord.js library. This comprehensive course covers bot architecture, event handling, API interactions, and deployment strategies. Learn to automate tasks, create custom commands, and build engaging experiences for Discord communities. From basic functionality to advanced features, this topic equips you with the skills to create powerful Discord bots.
This topic covers strategies and techniques for effective problem-solving, applicable across various domains. Learn to analyze complex situations, identify root causes, and develop creative solutions. Explore algorithmic thinking, logical reasoning, and debugging methods. Develop a structured approach to tackling challenges, enhancing analytical skills and decision-making abilities.
Learn to build robust web applications with the Slim Framework. This topic covers core concepts like routing, middleware, request handling, and response manipulation. You'll gain proficiency in structuring applications, handling data, and creating APIs using Slim v3 and v4. Develop a strong foundation for scalable web development.
Explore algorithmic trading with MQL5. This topic covers building automated trading strategies for crypto, forex, and gold markets. Learn to develop scalping Expert Advisors (EAs), implement risk management techniques, and optimize trading performance. Gain insights into backtesting, forward testing, and real-world deployment of automated trading systems.
This topic delves into advanced scripting techniques for the FiveM platform. Explore complex VRP framework implementations, custom script development, and optimization strategies. Learn to create unique gameplay experiences and enhance server functionality. Ideal for experienced FiveM developers seeking to expand their skillset.
This topic covers comprehensive testing strategies for React Native applications. Learn to write effective unit, integration, and end-to-end tests using Jest and Testing Library. Explore testing asynchronous operations with Axios, navigation flows with React Navigation, and form validation. Build robust and reliable mobile apps with confidence.
This topic covers popular frontend frameworks like Angular, React, and Vue.js. Learn component-based architecture, data binding, routing, and state management. Practice building interactive user interfaces and optimizing application performance. Ideal for developers seeking to enhance their skills in modern web development.
Explore LabVIEW's capabilities for data acquisition and instrument control. Learn to interface with hardware, process real-time data, and create custom measurement systems. This tutorial covers data logging, signal processing, and visualization techniques using LabVIEW. Ideal for engineers and scientists needing data-driven solutions.
This topic covers the fundamentals of car repair, maintenance, and troubleshooting. Learn about engine mechanics, diagnostics, and common vehicle systems. Suitable for beginners interested in automotive careers or DIY vehicle upkeep. Gain practical knowledge for vehicle upkeep and basic repairs. Explore essential tools and safety procedures.
This topic covers the practical aspects of repairing mobile devices, focusing on electronics and troubleshooting. Learn to diagnose common issues, replace damaged components like screens and boards, and understand basic circuit principles. Gain hands-on skills in mobile device repair and maintenance. This is a practical skill-based tutorial.
A comprehensive Java Bootcamp covering fundamental concepts, object-oriented programming, data structures, and essential libraries. Includes hands-on exercises and project-based learning to build a strong foundation. Ideal for those seeking a fast-paced, immersive Java learning experience. Focuses on practical application and problem-solving skills.
Learn powerful techniques for transforming and cleaning data using regular expressions and programming tools. This topic covers data extraction, validation, and reshaping, enabling effective data analysis. Explore applications in Python, Javascript, PHP, and Java for efficient data handling and preparation for insights.
Explore the intersection of technology and construction. This topic covers advanced tools and techniques used in the construction industry, including quantity takeoff, BIM, and project management software. Learn to leverage technology for improved efficiency, accuracy, and cost control in mechanical, electrical, and plumbing projects. Boost your career in the evolving construction landscape.
Explore the fundamentals of digital electronics and logic design. This topic covers Boolean algebra, logic gates, flip-flops, and basic combinational and sequential circuits. Learn to analyze and design digital systems, building a strong foundation for embedded systems and computer architecture. Gain practical skills in circuit analysis and design principles.
Explore modern software delivery pipelines using Git, GitHub, and GitHub Actions. Learn Continuous Integration/Continuous Deployment (CI/CD) principles, GitHub Flow, and automation strategies. This topic covers building robust workflows for efficient code management, testing, and deployment, essential for professional software development.
Explore the fundamentals of diverse programming languages beyond Python and Java. This topic covers core concepts like syntax, data types, control flow, and programming paradigms. Learn about scripting, compiled, and functional languages, gaining a broad understanding of language design and capabilities. Perfect for expanding your programming horizons.
Sharpen your problem-solving skills with algorithm practice. This topic covers a wide range of algorithmic techniques, including sorting, searching, graph algorithms, and dynamic programming. Learn to analyze time and space complexity, and implement efficient solutions. Perfect for interview preparation and general programming proficiency.
Explore efficient data transmission using messaging systems. This topic covers message producers, message types, and key concepts for building robust data pipelines. Learn about RocketMQ and its role in handling high-volume data streams. Understand message formats, delivery guarantees, and practical implementation strategies for reliable data exchange.
Prepare effectively for IT job interviews! This topic covers common interview question types, problem-solving strategies, and techniques for showcasing your skills. Practice coding challenges, system design questions, and behavioral scenarios to boost your confidence and ace your technical assessments. Learn to articulate your thought process clearly.
Explore the world of open-source software development. This topic covers contributing to existing projects, finding suitable projects, understanding licenses, and collaborating effectively with a global community. Learn best practices for code contribution, issue reporting, and participating in open-source discussions. Build your portfolio and enhance your coding skills.
This topic covers the fundamentals of creating electrical schematics using software like EPLAN P8. Learn circuit design principles, symbol usage, wiring techniques, and documentation standards. The course focuses on practical application, enabling users to generate professional and accurate electrical diagrams for various projects. Understand symbols, connections, and documentation best practices.
Develop robust data applications using Python and SQL databases. This topic covers database interaction, querying, data manipulation, and building user interfaces for data-driven applications. Learn to design efficient database schemas and implement secure data handling practices. Master Python's database connectors for practical application development.