-
Notifications
You must be signed in to change notification settings - Fork 131
Code to exercise your Python knowledge.
License
man-group/PythonTrainingExercises
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Python Exercises =================== In all cases the problem is stated in the top of the code which is for you to edit. A solution is given, usually in the solution sub-package. Requirements ------------ These should all work with any modern version of Python (2.7 of 3.2+). It is best if you have pytest [http://pytest.org/latest/] installed but it is not essential. Beginners: --------- Strings: In the strings/strings.py there are a series of string manipulation problems. The solutions are in strings/solution/strings.py Functions: Create an equivalent of the builtin functions filter and map. The problem is stated in Functions/Functions.py A solution is given in Functions/solution/Functions.py Classes: Create a class that represents a distance that can be coverted form one measure of units to another. The problem is stated in ClassLength/Length.py A solution is given in ClassLength/solution/Length.py Dictionaries Given a dictionary that maps state name to state capital how do you do the reverse i.e. state capital to state name. The problem is stated in DictOfStateCapitals/StateCapitals.py A solution is given in DictOfStateCapitals/solution/StateCapitals.py Intermediate: ------------- Files: Find duplicate files on the file system. The problem is stated in DuplicateFiles/DuplicateFiles.py A solution is given in DuplicateFiles/solution/DuplicateFiles.py Dictionaries: Use a dictionary to create a histogram of floating point numbers and print it out in a visual way. The problem is stated in Histogram/DictHistogram.py A solution is given in Histogram/solution/DictHistogram.py Generators: Create a generator that creates the infinite geometric series: 1, 1/2, 1/4, 1/8... then sums the first N values or the values until they are smaller than epsilon. The problem is stated in Generators/Generator.py A solution is given in Generators/solution/Generator.py Markov Chain: Create a class that can represent a MarkovChain https://en.wikipedia.org/wiki/Markov_chain The problem is stated in MarkovChain/MarkovChain.py A solution is given in MarkovChain/solution/MarkovChain.py Random Words: Write a function that randomises letters in words after the first N letters. The problem is stated in RandomWords/RandomWords.py A solution is given in RandomWords/solution/RandomWords.py Regular Expressions: Parse a list of lines and use regular expressions to process them differently according to what they contain. The problem is stated in RegexMapping/RegexMap.py A solution is given in RegexMapping/solution/RegexMap.py Advanced: --------- Co-routines: Write a co-routine that is sent words and maintains a sorted list of them. The problem is stated in Generators/CoRoutine.py A solution is given in Generators/solution/CoRoutine.py Decorators: Write a decorator that makes sure that only a particular type of exception is raised by the function. The problem is stated in Decorators/Decorators.py A solution is given in Decorators/solution/Decorators.py Create a strategy: Given the text for Romeo and Juliet can you predict which actor is next to speak? The problem is stated in RomeoAndJuliet/romeo_and_juliet.py A solution is given in RomeoAndJuliet/solution/romeo_and_juliet.py Created by Paul Ross <paul.ross@ahl.com> 2015-11-04 Licence: BSD3 # Source: https://opensource.org/licenses/BSD-3-Clause
About
Code to exercise your Python knowledge.
Topics
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published