Skip to content

Commit 05e85a0

Browse files
committed
Fourth koan
1 parent 86b207c commit 05e85a0

1 file changed

Lines changed: 33 additions & 33 deletions

File tree

python3/koans/about_lists.py

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ class AboutLists(Koan):
1111
def test_creating_lists(self):
1212
empty_list = list()
1313
self.assertEqual(list, type(empty_list))
14-
self.assertEqual(__, len(empty_list))
14+
self.assertEqual(0, len(empty_list))
1515

1616
def test_list_literals(self):
1717
nums = list()
@@ -21,70 +21,70 @@ def test_list_literals(self):
2121
self.assertEqual([1], nums)
2222

2323
nums[1:] = [2]
24-
self.assertListEqual([1, __], nums)
24+
self.assertListEqual([1, 2], nums)
2525

2626
nums.append(333)
27-
self.assertListEqual([1, 2, __], nums)
27+
self.assertListEqual([1, 2, 333], nums)
2828

2929
def test_accessing_list_elements(self):
3030
noms = ['peanut', 'butter', 'and', 'jelly']
3131

32-
self.assertEqual(__, noms[0])
33-
self.assertEqual(__, noms[3])
34-
self.assertEqual(__, noms[-1])
35-
self.assertEqual(__, noms[-3])
32+
self.assertEqual('peanut', noms[0])
33+
self.assertEqual('jelly', noms[3])
34+
self.assertEqual('jelly', noms[-1])
35+
self.assertEqual('butter', noms[-3])
3636

3737
def test_slicing_lists(self):
3838
noms = ['peanut', 'butter', 'and', 'jelly']
3939

40-
self.assertEqual(__, noms[0:1])
41-
self.assertEqual(__, noms[0:2])
42-
self.assertEqual(__, noms[2:2])
43-
self.assertEqual(__, noms[2:20])
44-
self.assertEqual(__, noms[4:0])
45-
self.assertEqual(__, noms[4:100])
46-
self.assertEqual(__, noms[5:0])
40+
self.assertEqual(['peanut'], noms[0:1])
41+
self.assertEqual(['peanut', 'butter'], noms[0:2])
42+
self.assertEqual([], noms[2:2])
43+
self.assertEqual(['and', 'jelly'], noms[2:20])
44+
self.assertEqual([], noms[4:0])
45+
self.assertEqual([], noms[4:100])
46+
self.assertEqual([], noms[5:0])
4747

4848
def test_slicing_to_the_edge(self):
4949
noms = ['peanut', 'butter', 'and', 'jelly']
5050

51-
self.assertEqual(__, noms[2:])
52-
self.assertEqual(__, noms[:2])
51+
self.assertEqual(['and', 'jelly'], noms[2:])
52+
self.assertEqual(['peanut', 'butter'], noms[:2])
5353

5454
def test_lists_and_ranges(self):
5555
self.assertEqual(range, type(range(5)))
5656
self.assertNotEqual([1, 2, 3, 4, 5], range(1,6))
57-
self.assertEqual(__, list(range(5)))
58-
self.assertEqual(__, list(range(5, 9)))
57+
self.assertEqual([0, 1, 2, 3, 4], list(range(5)))
58+
self.assertEqual([5, 6, 7, 8], list(range(5, 9)))
5959

6060
def test_ranges_with_steps(self):
61-
self.assertEqual(__, list(range(5, 3, -1)))
62-
self.assertEqual(__, list(range(0, 8, 2)))
63-
self.assertEqual(__, list(range(1, 8, 3)))
64-
self.assertEqual(__, list(range(5, -7, -4)))
65-
self.assertEqual(__, list(range(5, -8, -4)))
61+
self.assertEqual([5, 4], list(range(5, 3, -1)))
62+
self.assertEqual([0, 2, 4, 6], list(range(0, 8, 2)))
63+
self.assertEqual([1, 4, 7], list(range(1, 8, 3)))
64+
self.assertEqual([5, 1, -3], list(range(5, -7, -4)))
65+
self.assertEqual([5, 1, -3, -7], list(range(5, -8, -4)))
6666

6767
def test_insertions(self):
6868
knight = ['you', 'shall', 'pass']
6969
knight.insert(2, 'not')
70-
self.assertEqual(__, knight)
70+
self.assertEqual(['you', 'shall', 'not', 'pass'], knight)
7171

7272
knight.insert(0, 'Arthur')
73-
self.assertEqual(__, knight)
73+
self.assertEqual(['Arthur', 'you', 'shall', 'not', 'pass'], knight)
7474

7575
def test_popping_lists(self):
7676
stack = [10, 20, 30, 40]
7777
stack.append('last')
7878

79-
self.assertEqual(__, stack)
79+
self.assertEqual([10, 20, 30, 40, 'last'], stack)
8080

8181
popped_value = stack.pop()
82-
self.assertEqual(__, popped_value)
83-
self.assertEqual(__, stack)
82+
self.assertEqual('last', popped_value)
83+
self.assertEqual([10, 20, 30, 40], stack)
8484

8585
popped_value = stack.pop(1)
86-
self.assertEqual(__, popped_value)
87-
self.assertEqual(__, stack)
86+
self.assertEqual(20, popped_value)
87+
self.assertEqual([10, 30, 40], stack)
8888

8989
# Notice that there is a "pop" but no "push" in python?
9090

@@ -98,11 +98,11 @@ def test_making_queues(self):
9898
queue = [1, 2]
9999
queue.append('last')
100100

101-
self.assertEqual(__, queue)
101+
self.assertEqual([1, 2, 'last'], queue)
102102

103103
popped_value = queue.pop(0)
104-
self.assertEqual(__, popped_value)
105-
self.assertEqual(__, queue)
104+
self.assertEqual(1, popped_value)
105+
self.assertEqual([2, 'last'], queue)
106106

107107
# Note, popping from the left hand side of a list is
108108
# inefficient. Use collections.deque instead.

0 commit comments

Comments
 (0)