Skip to content

Commit 40a0b98

Browse files
committed
-
1 parent 0006bec commit 40a0b98

File tree

3 files changed

+19
-5
lines changed

3 files changed

+19
-5
lines changed

source_py3/python_toolbox/combi/perming/perm_space.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -634,7 +634,7 @@ def __getitem__(self, i):
634634
raise RuntimeError
635635
assert wip_i == 0
636636
return self.perm_type(
637-
dict_tools.get_list(wip_perm_sequence_dict, self.domain),
637+
dict_tools.get_tuple(wip_perm_sequence_dict, self.domain),
638638
self
639639
)
640640

source_py3/python_toolbox/dict_tools.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,9 @@ def filter_items(d, condition, double=False, force_dict_type=None):
4545
)
4646

4747

48-
def get_list(d, iterable):
49-
'''Get a list of values corresponding to an `iterable` of keys.'''
50-
return [d[key] for key in iterable]
48+
def get_tuple(d, iterable):
49+
'''Get a tuple of values corresponding to an `iterable` of keys.'''
50+
return tuple(d[key] for key in iterable)
5151

5252

5353
def get_contained(d, container):
@@ -192,6 +192,9 @@ def remove_keys(d, keys_to_remove):
192192

193193

194194
def get_sorted_values(d, key=None):
195+
'''
196+
Get the values of dict `d` as a `tuple` sorted by their respective keys.
197+
'''
195198
kwargs = {'key': key,} if key is not None else {}
196-
return get_list(d, sorted(d.keys(), **kwargs))
199+
return get_tuple(d, sorted(d.keys(), **kwargs))
197200

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Copyright 2009-2014 Ram Rachum.
2+
# This program is distributed under the MIT license.
3+
4+
from python_toolbox import dict_tools
5+
6+
7+
def test():
8+
d = {1: 'a', 2: 'd', 3: 'j', 4: 'b',}
9+
assert dict_tools.get_sorted_values(d) == ('a', 'd', 'j', 'b')
10+
assert dict_tools.get_sorted_values(d, key=lambda x: -x) == \
11+
('b', 'j', 'd', 'a')

0 commit comments

Comments
 (0)