This course contains lots of labs for Python, each lab is a small Python project with detailed guidance and solutions. You can practice your Python skills by completing these labs, improve your coding skills, and learn how to write clean and efficient code.
LabEx is an interactive, hands-on learning platform dedicated to coding and technology. It combines labs, AI assistance, and virtual machines to provide a no-video, practical learning experience.
- A strict βLearn by Doingβ approach with exclusive hands-on labs and no videos.
- Interactive online environments within the browser, with automated step-by-step checks.
- A structured content organization with the Skill Tree based learning system.
- A growing learning resource of 30 Skill Trees and over 6,000 Labs.
- The AI learning assistant Labby, built on ChatGPT, providing a conversational learning experience.
Learn more about LabEx VM.
Index | Name | Difficulty | Practice |
---|---|---|---|
001 | π Python Variables and Data Types | β ββ | Start Lab |
002 | π Python Numeric Types | β ββ | Start Lab |
003 | π Python String Manipulation Mastery | β ββ | Start Lab |
004 | π Unlocking Ancient Computing with Python Booleans | β ββ | Start Lab |
005 | π Exploring Python Comments in Magical Forest | β ββ | Start Lab |
006 | π Python Type Conversion | β ββ | Start Lab |
007 | π Python Python Shell | β ββ | Start Lab |
008 | π Python Conditional Statements | β ββ | Start Lab |
009 | π Python For Loops | β ββ | Start Lab |
010 | π Python While Loops | β ββ | Start Lab |
011 | π Python Break and Continue | β ββ | Start Lab |
012 | π Python List Comprehensions | β ββ | Start Lab |
013 | π Organizing Palace Inventory with Python Lists | β ββ | Start Lab |
014 | π Python Tuple Mastery in Virtual Arena | β ββ | Start Lab |
015 | π Python Dictionaries for Stellar Exploration | β ββ | Start Lab |
016 | π Python Sets Management Lab | β ββ | Start Lab |
017 | π Python Function Definition | β ββ | Start Lab |
018 | π Python Arguments and Return Values | β ββ | Start Lab |
019 | π Python Default Arguments | β ββ | Start Lab |
020 | π Python Keyword Arguments | β ββ | Start Lab |
021 | π Python Lambda Functions | β ββ | Start Lab |
022 | π Capitalize First Letter In Words | β ββ | Start Lab |
023 | π Convert Celsius to Fahrenheit | β ββ | Start Lab |
024 | π Fahrenheit to Celsius Conversion | β ββ | Start Lab |
025 | π Convert Kilometers to Miles Converter | β ββ | Start Lab |
026 | π Convert Miles to Kilometers | β ββ | Start Lab |
027 | π Python Scope Mastery: Architect the Pythonic Realm | β ββ | Start Lab |
028 | π Recursive Functions in Python | β ββ | Start Lab |
029 | π Python Build-in Functions | β ββ | Start Lab |
030 | π Python Importing Modules | β ββ | Start Lab |
031 | π Check if a Number is Even | β ββ | Start Lab |
032 | π Check if a Number is Odd | β ββ | Start Lab |
033 | π Python Creating Modules | β ββ | Start Lab |
034 | π Python Using Packages | β ββ | Start Lab |
035 | π Python Common Standard Libraries | β ββ | Start Lab |
036 | π Python Classes and Objects | β ββ | Start Lab |
037 | π Python Constructors for Imperial Artifacts | β ββ | Start Lab |
038 | π Camel Driver Training for Desert Navigation | β ββ | Start Lab |
039 | π Space City Architect Polymorphic Design | β ββ | Start Lab |
040 | π Python Encapsulation Secrets | β ββ | Start Lab |
041 | π Python Class Methods and Static Methods | β ββ | Start Lab |
042 | π Python Catching Exceptions | β ββ | Start Lab |
043 | π Repeat String with Python Operator | β ββ | Start Lab |
044 | π Python Raising Exceptions | β ββ | Start Lab |
045 | π Python Custom Exceptions | β ββ | Start Lab |
046 | π Python Finally Block | β ββ | Start Lab |
047 | π Python Opening and Closing Files | β ββ | Start Lab |
048 | π Determine Number Divisibility in Python | β ββ | Start Lab |
049 | π Python Reading and Writing Files | β ββ | Start Lab |
050 | π Python File Operations | β ββ | Start Lab |
051 | π Python Using with Statement | β ββ | Start Lab |
052 | π Python Iterator Mastery Challenge | β ββ | Start Lab |
053 | π Python Generators to Haunt Sanatorium | β ββ | Start Lab |
054 | π Optimizing Subterranean Python Workflows | β ββ | Start Lab |
055 | π Determining String Byte Size | β ββ | Start Lab |
056 | π Reverse Dictionary Data Structure | β ββ | Start Lab |
057 | π Number to Binary | β ββ | Start Lab |
058 | π Number to Hex | β ββ | Start Lab |
059 | π Python Context Managers | β ββ | Start Lab |
060 | π Python Regular Expressions Basics | β ββ | Start Lab |
061 | π Python Multithreading and Multiprocessing | β ββ | Start Lab |
062 | π Counting Occurrences in Python Lists | β ββ | Start Lab |
063 | π Every nth element in list | β ββ | Start Lab |
064 | π List Head Function | β ββ | Start Lab |
065 | π Remove Last Element from Python List | β ββ | Start Lab |
066 | π Last List Element | β ββ | Start Lab |
067 | π Offset List Elements | β ββ | Start Lab |
068 | π Reverse List Function | β ββ | Start Lab |
069 | π Rotate List Elements | β ββ | Start Lab |
070 | π Python Math and Random | β ββ | Start Lab |
071 | π Python Date and Time | β ββ | Start Lab |
072 | π Python Data Collections | β ββ | Start Lab |
073 | π Python Virtual Environment Management | β ββ | Start Lab |
074 | π Python Data Serialization | β ββ | Start Lab |
075 | π Python Operating System and System | β ββ | Start Lab |
076 | π Python Socket Programming | β ββ | Start Lab |
077 | π Check if Key Exists in Dictionary | β ββ | Start Lab |
078 | π Python HTTP Requests | β ββ | Start Lab |
079 | π Python Networking Protocols | β ββ | Start Lab |
080 | π Python Numerical Computing | β ββ | Start Lab |
081 | π Execute Function for Each List Element | β ββ | Start Lab |
082 | π Reverse Iteration in Python | β ββ | Start Lab |
083 | π Python Data Analysis | β ββ | Start Lab |
084 | π Python Data Visualization | β ββ | Start Lab |
085 | π Python's Conditional Statements | β ββ | Start Lab |
086 | π Clamping Numbers Within Range | β ββ | Start Lab |
087 | π Calculating Hamming Distance Between Strings | β ββ | Start Lab |
088 | π Python Machine Learning | β ββ | Start Lab |
089 | π While Loop Statements | β ββ | Start Lab |
090 | π Split Multiline Strings | β ββ | Start Lab |
091 | π Apply Function Conditionally | β ββ | Start Lab |
092 | π Recursive Factorial Calculation in Python | β ββ | Start Lab |
093 | π Determining Number Within Range | β ββ | Start Lab |
094 | π Drop List Elements from the Left | β ββ | Start Lab |
095 | π Drop List Elements from the Right | β ββ | Start Lab |
096 | π Remove List Elements | β ββ | Start Lab |
097 | π Remove List Elements from the End | β ββ | Start Lab |
098 | π Map Number to Range | β ββ | Start Lab |
099 | π Flatten a List | β ββ | Start Lab |
100 | π Check if a List Includes All Values | β ββ | Start Lab |
101 | π Check List Membership | β ββ | Start Lab |
102 | π Pad Numbers to Specified Length in Python | β ββ | Start Lab |
103 | π Index of Max Element | β ββ | Start Lab |
104 | π Index of min element | β ββ | Start Lab |
105 | π Key of Max Value | β ββ | Start Lab |
106 | π Key of Min Value | β ββ | Start Lab |
107 | π RGB to Hex Conversion | β ββ | Start Lab |
108 | π Generate Fibonacci Sequence in Python | β ββ | Start Lab |
109 | π Python List Comprehension Comparison | β ββ | Start Lab |
110 | π Capitalize First Letter in Python | β ββ | Start Lab |
111 | π Decapitalize First Letter in Python | β ββ | Start Lab |
112 | π Extracting List Tail in Python | β ββ | Start Lab |
113 | π Convert Integer to Roman Numerals | β ββ | Start Lab |
114 | π Weighted Average Calculation Function | β ββ | Start Lab |
115 | π Pluck values from list of dictionaries | β ββ | Start Lab |
116 | π Predicate Functions on Dictionary Properties | β ββ | Start Lab |
117 | π Calculate Average in Python | β ββ | Start Lab |
118 | π Longest Iterable Object Identification | β ββ | Start Lab |
119 | π Find Maximum Elements From List | β ββ | Start Lab |
120 | π N Minimum Elements | β ββ | Start Lab |
121 | π Bifurcate List Based on Function | β ββ | Start Lab |
122 | π Python String Manipulation Techniques | β ββ | Start Lab |
123 | π All Indexes of Value | β ββ | Start Lab |
124 | π The Power and Flexibility of F-String | β ββ | Start Lab |
125 | π Split List by Filter in Python | β ββ | Start Lab |
126 | π Find Maximum List Value Based on Function | β ββ | Start Lab |
127 | π Find Minimum by Attribute in Python | β ββ | Start Lab |
128 | π Sum List Based on Function | β ββ | Start Lab |
129 | π Initialize 2D List | β ββ | Start Lab |
130 | π Initialize List with Values | β ββ | Start Lab |
131 | π Sum of powers | β ββ | Start Lab |
132 | π Check for Duplicates in List Function | β ββ | Start Lab |
133 | π Check for Duplicates in a List | β ββ | Start Lab |
134 | π Test if every list element is truthy | β ββ | Start Lab |
135 | π Test if some list elements are truthy | β ββ | Start Lab |
136 | π Find All Matching Indexes | β ββ | Start Lab |
137 | π Arithmetic Progression Generator | β ββ | Start Lab |
138 | π Find Common Elements in Python Lists | β ββ | Start Lab |
139 | π Matrix Transpose in Python | β ββ | Start Lab |
140 | π Unique List Combination in Python | β ββ | Start Lab |
141 | π Unique Elements in List | β ββ | Start Lab |
142 | π Extracting Dictionary Keys in Python | β ββ | Start Lab |
143 | π Test if every list element is falsy | β ββ | Start Lab |
144 | π Python Dictionaries: Key-Value Pairs | β ββ | Start Lab |
145 | π Most Frequent Element | β ββ | Start Lab |
146 | π Python Decorator Fundamentals | β ββ | Start Lab |
147 | π Mapped List Average | β ββ | Start Lab |
148 | π Check if List Elements are Identical | β ββ | Start Lab |
149 | π Remove Falsy Values in Python | β ββ | Start Lab |
150 | π Python Snake Case Conversion | β ββ | Start Lab |
151 | π Switch Case Statements | β ββ | Start Lab |
152 | π Formatting Python Print Statements | β ββ | Start Lab |
153 | π Python Loops and Ranges | β ββ | Start Lab |
154 | π Cast to List | β ββ | Start Lab |
155 | π Palindrome Detection in Python | β ββ | Start Lab |
156 | π Webbrowser Package Basic | β ββ | Start Lab |
157 | π Convert Number to Digit List in Python | β ββ | Start Lab |
158 | π Anagram Checker: A Python Challenge | β ββ | Start Lab |
159 | π Dictionary to List | β ββ | Start Lab |
160 | π Lists to Dictionary | β ββ | Start Lab |
161 | π Median Calculation with Python | β ββ | Start Lab |
162 | π Hex to RGB Conversion | β ββ | Start Lab |
163 | π Flatten Nested Lists with Python | β ββ | Start Lab |
164 | π Get Nested Value | β ββ | Start Lab |
165 | π Initialize List with Range | β ββ | Start Lab |
166 | π Checking If Sequence Is Empty | β ββ | Start Lab |
167 | π Merging Multiple Lists in Python | β ββ | Start Lab |
168 | π Comparing List Contents in Programming | β ββ | Start Lab |
169 | π Checking List Containment in Python | β ββ | Start Lab |
170 | π Convert Strings to URL-Friendly Slugs | β ββ | Start Lab |
171 | π Sort Dictionary by Key | β ββ | Start Lab |
172 | π Python SQLite3 Programming | β β β | Start Lab |
173 | π Convert Angle Degrees to Radians | β ββ | Start Lab |
174 | π Convert Angles Between Radians and Degrees | β ββ | Start Lab |
175 | π Convert ISO Date | β ββ | Start Lab |
176 | π Calculate List Differences in Python | β ββ | Start Lab |
177 | π Find Matching Value | β ββ | Start Lab |
178 | π Find Matching Index | β ββ | Start Lab |
179 | π Find the Last Matching Value | β ββ | Start Lab |
180 | π Find the Last Matching Index | β ββ | Start Lab |
181 | π Symmetric Difference Between Python Lists | β ββ | Start Lab |
182 | π Review Basic File I/O | β ββ | Start Lab |
183 | π Python Regular Expressions | β ββ | Start Lab |
184 | π Merging Multiple Python Dictionaries | β ββ | Start Lab |
185 | π Function Composition with Python | β ββ | Start Lab |
186 | π Implement Left-to-Right Function Composition | β ββ | Start Lab |
187 | π Currying in Python Using functools.partial | β ββ | Start Lab |
188 | π Find Keys with Value | β ββ | Start Lab |
189 | π Filter Non-Unique List Values | β ββ | Start Lab |
190 | π Filter Unique List Values | β ββ | Start Lab |
191 | π Find Parity Outliers | β ββ | Start Lab |
192 | π Map List to Dictionary | β ββ | Start Lab |
193 | π Python Operators for Decision-Making | β ββ | Start Lab |
194 | π Binomial Coefficient Calculation Tutorial | β ββ | Start Lab |
195 | π Python Date and Time Manipulation | β ββ | Start Lab |
196 | π Calculate Date Difference | β ββ | Start Lab |
197 | π Calculate Days from Today | β ββ | Start Lab |
198 | π Sort List by Indexes | β ββ | Start Lab |
199 | π Date to ISO format | β ββ | Start Lab |
200 | π Dates and Times | β ββ | Start Lab |
201 | π Exploring Python's Built-in Math Functions | β ββ | Start Lab |
202 | π Building Lists with Iterators in Python | β ββ | Start Lab |
203 | π Extract Words from String | β ββ | Start Lab |
204 | π Variables and Memory Addresses | β ββ | Start Lab |
205 | π Map Dictionary Values | β ββ | Start Lab |
206 | π Camelcase Naming Convention for Programming | β ββ | Start Lab |
207 | π Calculating Greatest Common Divisor | β ββ | Start Lab |
208 | π Random Element in List | β ββ | Start Lab |
209 | π Delayed Function Execution | β ββ | Start Lab |
210 | π Deep Flatten List | β ββ | Start Lab |
211 | π Python Assignment and Reference | β ββ | Start Lab |
212 | π Sorting Dictionary by Values in Python | β ββ | Start Lab |
213 | π Add Days to a Given Date | β ββ | Start Lab |
214 | π Find Key by Value in Python Dictionary | β ββ | Start Lab |
215 | π Check if a Date is a Weekday | β ββ | Start Lab |
216 | π Determine If Date Is Weekend | β ββ | Start Lab |
217 | π Define a Simple Object | β ββ | Start Lab |
218 | π Python Is Operator | β ββ | Start Lab |
219 | π Handling Python Syntax Errors and Exceptions | β ββ | Start Lab |
220 | π Manipulate Various Built-in Python Objects | β ββ | Start Lab |
221 | π Attribute Access and Bound Methods | β ββ | Start Lab |
222 | π Create a Python Package | β ββ | Start Lab |
223 | π How Objects Are Represented | β ββ | Start Lab |
224 | π Partial Sum List | β ββ | Start Lab |
225 | π Convert String to Kebab Case in Python | β ββ | Start Lab |
226 | π Pad String to Specified Length in Python | β ββ | Start Lab |
227 | π Randomize List Order in Python | β ββ | Start Lab |
228 | π Power Set Generation in Python | β ββ | Start Lab |
229 | π Reverse Number Coding Challenge | β ββ | Start Lab |
230 | π Review Simple Functions Exception Handling | β ββ | Start Lab |
231 | π Invert Dictionary with Duplicates | β ββ | Start Lab |
232 | π Calculate Month Difference in Python | β ββ | Start Lab |
233 | π Efficient Prime Number Detection | β ββ | Start Lab |
234 | π Classes and Objects | β ββ | Start Lab |
235 | π Utilize Generators For Stocksim Pipelines | β ββ | Start Lab |
236 | π Geometric Progression Sequence Generator | β ββ | Start Lab |
237 | π Frequency Analysis of List Elements | β ββ | Start Lab |
238 | π Python Itertools for Efficient Combinatorics | β ββ | Start Lab |
239 | π Calculating Least Common Multiple | β ββ | Start Lab |
240 | π Generate Date Range in Python | β ββ | Start Lab |
241 | π Reading and Writing Files | β ββ | Start Lab |
242 | π Returning Values From Functions | β ββ | Start Lab |
243 | π Python Unittest Module | β ββ | Start Lab |
244 | π Combine Dictionary Values | β ββ | Start Lab |
245 | π Create Your First Metaclass | β ββ | Start Lab |
246 | π Testing Your Code | β ββ | Start Lab |
247 | π Exploring Python's Collections Module | β ββ | Start Lab |
248 | π Python Multiprocessing for Parallel Execution | β β β | Start Lab |
249 | π Defining and Importing Python Modules | β ββ | Start Lab |
250 | π Split List Into Smaller Chunks | β ββ | Start Lab |
251 | π Split List into N Chunks | β ββ | Start Lab |
252 | π Group List Elements | β ββ | Start Lab |
253 | π Python Function Fundamentals | β ββ | Start Lab |
254 | π List Intersection Based on Function | β ββ | Start Lab |
255 | π Symmetric Difference Based on Function | β ββ | Start Lab |
256 | π List Union Based on Function | β ββ | Start Lab |
257 | π Modules and Packages | β ββ | Start Lab |
258 | π Run a Small Program | β ββ | Start Lab |
259 | π Practical Use of Inheritance | β ββ | Start Lab |
260 | π Python Assignment Expressions | β ββ | Start Lab |
261 | π A Review of Module Basics | β ββ | Start Lab |
262 | π Learn About Descriptors | β ββ | Start Lab |
263 | π List Difference Based on Function | β ββ | Start Lab |
264 | π Group Elements by Function | β ββ | Start Lab |
265 | π Mixin Classes and Cooperative Inheritance | β ββ | Start Lab |
266 | π Function Argument Passing Conventions | β ββ | Start Lab |
267 | π Behavior of Inheritance | β ββ | Start Lab |
268 | π Private Attributes and Properties | β ββ | Start Lab |
269 | π Learn More About Closures | β ββ | Start Lab |
270 | π Basic Magic Methods | β β β | Start Lab |
271 | π Pythonic JSON Data Handling | β ββ | Start Lab |
272 | π Customizing Attribute Access | β ββ | Start Lab |
273 | π File and Folder Manipulation | β ββ | Start Lab |
274 | π Python's Higher Functions | β ββ | Start Lab |
275 | π Various Data Analysis Problems | β ββ | Start Lab |
276 | π Create Code with Exec | β ββ | Start Lab |
277 | π Scoping Rules and Tricks | β ββ | Start Lab |
278 | π Make a New Primitive Type | β ββ | Start Lab |
279 | π Custom Numeric Magic Methods | β ββ | Start Lab |
280 | π Circular and Dynamic Module Imports | β ββ | Start Lab |
281 | π Iterator and Generator | β ββ | Start Lab |
282 | π Sequence Magic Methods | β β β | Start Lab |
283 | π Iterate Like a Pro | β ββ | Start Lab |
284 | π Definitional Aspects of Functions | β ββ | Start Lab |
285 | π Inspect the Internals of Functions | β ββ | Start Lab |
286 | π Exception Handling and Logging | β ββ | Start Lab |
287 | π Define a Simple Decorator Functions | β ββ | Start Lab |
288 | π Decorator Chaining and Parameterized Decorators | β ββ | Start Lab |
289 | π Define a Proper Callable Object | β ββ | Start Lab |
290 | π Define a Simple Class | β ββ | Start Lab |
291 | π Coroutine-Powered Data Processing | β ββ | Start Lab |
292 | π Python Typing: Enhancing Code Readability | β ββ | Start Lab |
293 | π Yield Statement Management in Python | β ββ | Start Lab |
294 | π Learn About Class Decorators | β ββ | Start Lab |
295 | π Type Checking and Interfaces | β ββ | Start Lab |
296 | π Easy to Use Threading | β β β | Start Lab |
297 | π Class Variables and Class Methods | β ββ | Start Lab |
298 | π Different Ways of Representing Records | β ββ | Start Lab |
299 | π Make a Custom Container | β ββ | Start Lab |
300 | π Customize Iteration Using Generators | β ββ | Start Lab |
301 | π Low-Level of Class Creation | β ββ | Start Lab |
302 | π Metaclasses in Action | β ββ | Start Lab |
303 | π Exploring Python's First-Class Objects Memory Mode... | β ββ | Start Lab |
304 | π Redefining Special Methods | β ββ | Start Lab |
305 | π Learn About Delegating Generators | β ββ | Start Lab |
306 | π Learn About Managed Generators | β ββ | Start Lab |
307 | π Crafting Command-Line Python Programs | β ββ | Start Lab |
308 | π Controlling Symbols and Combining Submodules | β ββ | Start Lab |