Python Online Test
For Jobseekers
Practice your skills and earn a certificate of achievement when you score in the top 25%.
Take a Practice TestFor Companies
Test candidates with real-world problems and interview the best ones.
Sign Up to Offer this TestAbout the test
The Python online test assesses knowledge of programming in the Python language and commonly used parts of the Python Standard Library. This test requires solving live coding problems in Python.
The assessment includes work-sample tasks such as:
- Working with Python collections and language constructs.
- Using proper algorithms and data structures to optimize application performance.
- Serializing to/from JSON to handle web requests.
A good Python developer needs a solid understanding of the Python programming language and knowledge of its data structures and language constructs to write robust and maintainable code.
Sample public questions
A gaming company is working on a platformer game. They need a function that will compute the character's final speed, given a map and a starting speed.
The terrain on which the game character moves forward is made from various pieces of land placed together. Implement the function calculate_final_speed which takes the initial speed of the character, and an array of degrees of inclination that represent the uneven terrain.
The speed of the character will increase or decrease proportionally to the incline of the land, as shown in the image below:
The magnitude of the angle of inclination will always be < 90°. The speed change occurs only once for each piece of land. The function should immediately return 0 as the final speed if an incline reduces the speed to 0 or below 0, which makes the character lose 1 life.
For example, the below code:
print(calculate_final_speed(60, [0, 30, 0, -45, 0]))
should print:
75
Your company is analyzing malware which targets numerical record files.
The malware uses a sliding window over the array of numbers in a file, and tries to match the following pattern:
Tl, -, -, X, -, -, -, Tr
The entire window is moved so that 'X' passes through all the values and is compared to the numbers at the 'Tl' and 'Tr' locations, which are positioned at a constant offset to 'X'.
The malware has the following rules:
- If the value at the 'Tl' or 'Tr' position of the pattern is bigger or equal to the value at the 'X’ position, the malware replaces the value at 'X' with 0.
- If the value at the 'Tl' or 'Tr' offset is out of bounds, then the value at 'X' is only compared to the other existing value.
- The record is processed in two stages: first, all the positions that should be set to 0 are located, using the original values for comparison. Only after all positions have been identified do they get set to 0.
For example, if the values in a record file are the following:
[1, 2, 0, 5, 0, 2, 4, 3, 3, 3]
The expected values after the malware runs are:
[1, 0, 0, 5, 0, 0, 0, 3, 3, 0]
In this example, both '2's, the '4' and the last '3' were replaced by 0.
Implement the simulate function so that the malware behavior is replicated for further study.
For jobseekers: get certified
Earn a free certificate by achieving top 25% on the Python test with public questions.
Take a Certification TestSample silver certificate
Sunshine Caprio
Java and SQL TestDomeCertificate
For companies: premium questions
Buy TestDome to access premium questions that can't be practiced.
Get money back if you find any premium question answered online.
61 more premium Python questions
Category Tree, Kilometer Converter, Chain Link, Unique Numbers, Moving Total, Max Sum, Reward Points, Flight Connections, Internal Nodes, Is Alpha, Hobbies, Medical Record, Read First Line, Crop Ratio, Username, Log Parser, Special Actions, Veterinarian, Document Store, Paper Strip, Segment, Language Teacher, Read Write Execute, Ceramic Store, String Occurrence, XML Navigation, Date Transform, Book Sale, Numbers To Text, Shipping, Company Stock, Airport Networks, Log Patch, Count Hobbies, Book Authors, Friend, Car Rental, Chinese Box, Stories, Driver Exam, Worker, Vectors, Random Playlist, File Format, Action Stack, Paragraph, Procedural Generator, Cargo Ship, Tuple Slice, Greeter, Node, Planet Search, Digital Flasks, Students, Calories Burned, Circuit Simulator, Chemical Machine, Popular Book, Construction Game, Flimsy Bridge, Parking Allocation.
Skills and topics tested
- Python
- Dictionary
- Exceptions
- Inheritance
- Method Overriding
- OOP
- Linked List
- Algorithmic Thinking
- Set
- Graphs
- Lists
- Tree
- List Comprehension
- Strings
- Iteration
- Named Tuple
- Bug Fixing
- Integer Division
- Language
- Regex
- Serialization
- XML
- Queue
- Arithmetic
- Multithreading
- Stream
- Dynamic Objects
- Sorting
- AI Code Review
- Conditional Statements
- Loops
- 2D Array
- Monkey Patching
- Conditions
- Performance Tuning
- Data Structures
- Dynamic Programming
- Memory Management
- Closures
- Stack
- Random
- Tuples
- Recursion
- JSON
For job roles
- Back-End Developer
- Python Developer
- Web Developer
Sample candidate report
Need it fast? AI-crafted tests for your job role
TestDome generates custom tests tailored to the specific skills you need for your job role.
Sign up now to try it out and see how AI can streamline your hiring process!
What others say
Simple, straight-forward technical testing
TestDome is simple, provides a reasonable (though not extensive) battery of tests to choose from, and doesn't take the candidate an inordinate amount of time. It also simulates working pressure with the time limits.
Jan Opperman, Grindrod Bank
Product reviews
Used by
Solve all your skill testing needs
150+ Pre-made tests
From web development and database administration to project management and customer support. See all pre-made tests.
90+ skills
From JavaScript and SQL to English and customer support. See all questions to filter by skill.
Multi-skills Test
Mix questions for different skills or even custom questions in one test. See an example.
How TestDome works
Choose a pre-made test
or create a custom test
Invite candidates via
email, URL, or your ATS
Candidates take
a test remotely
Sort candidates and
get individual reports