-
Notifications
You must be signed in to change notification settings - Fork 132
/
ReadMe.txt
executable file
·100 lines (76 loc) · 3.26 KB
/
ReadMe.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
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 <[email protected]>
2015-11-04
Licence: BSD3 # Source: https://opensource.org/licenses/BSD-3-Clause