diff options
author | pukkandan <pukkandan.ytdlp@gmail.com> | 2021-07-15 20:22:49 +0530 |
---|---|---|
committer | pukkandan <pukkandan.ytdlp@gmail.com> | 2021-07-20 02:42:11 +0530 |
commit | 8f3343809ea9055006898d1a6d82c19082eb2379 (patch) | |
tree | 81a34b1af5f59ed284a0437ba23a0e54439da83f /test/test_youtube_misc.py | |
parent | 0ba692acc8feffd46b6e1085fb4a2849b685945c (diff) | |
download | hypervideo-pre-8f3343809ea9055006898d1a6d82c19082eb2379.tar.lz hypervideo-pre-8f3343809ea9055006898d1a6d82c19082eb2379.tar.xz hypervideo-pre-8f3343809ea9055006898d1a6d82c19082eb2379.zip |
[utils] Improve `traverse_obj`
* Allow skipping a level: `traverse_obj([{k:v1}, {k:v2}], (None, k))` => `[v1, v2]`
* Make keys variadic: `traverse_obj(obj, k1: str, k2: str)` => `traverse_obj(obj, (k1,), (k2,))`
* Fetch from multiple keys: `traverse_obj([{k1:[1], k2:[2], k3:[3]}], (0, (k1, k2), 0))` => `[1, 2]`
TODO: Add tests
Diffstat (limited to 'test/test_youtube_misc.py')
0 files changed, 0 insertions, 0 deletions