Асен обнови решението на 23.03.2015 16:48 (преди над 9 години)
+def extract_type(text, forType):
+ return "".join(list(s*t for s, t in text if isinstance(s, forType)))
+
+def reversed_dict(otherDict):
+ return dict(zip(otherDict.values(), otherDict))
+
+def flatten_dict(d):
+ final = {}
+ def _flatten_dict(obj, parent_keys=[]):
+ for k, v in obj.items():
+ if isinstance(v, dict):
+ _flatten_dict(v, parent_keys + [k])
+ else:
+ key = ".".join(parent_keys + [k])
+ final[key] = v
+ _flatten_dict(d)
+ return list(sorted(final.items(), key=lambda key_value: key_value[0], reverse=True))
+
+def unflatten_dict(d):
+ result = {}
+ for k,v in d.items():
+ if '.' in k:
+ k1, k2 = k.split('.', 1)
+ v = {k2: v}
+ k = k1
+ result[k] = v
+ return sorted(result.items(), key=lambda key_value: key_value[0])
+
+def reps(args):
+ return tuple(e for e in args if args.count(e) > 1)
Не разбирам реда
return list(sorted(final.items(), key=lambda key_value: key_value[0], reverse=True))
Защо? Написал си правилно функцията и... този ред. Пусна ли поне веднъж примерните тестове?
А сега малко за стил. Прочети pep8. Но мнго по - важното: четири интервала. Не два, не три, не табове.