PQ is a jq-like viewer/processing tool for pickle files.
# pq '' file.pkl
{'other': 456, 'test': 123}
# pq '' file.pkl -f table
|other|test|
| 456 |123 |
# pq 'keys' file.pkl
['test', 'other']
# pq '.["test"]' file.pkl
123
# pq 'eval({"value": i["other"] + i["test"]})' file.pkl -f table
|value|
|=====|
| 579 |
Filter |
Usage |
Description |
flat |
.[] |
Extract elements from list to apply filters on each |
keys |
keys |
Extract keys from dictionary or list(range(len(list))) on a list |
accessor |
.ATTRIBUTE or .[INDEX] |
Read attribute from object or index on a list/dictionary |
sort |
sort(FILTEREXPR) |
Order elements by result of filter expression (accessor, eval) |
eval |
eval(EVALEXPR) |
Apply EVALEXPR on items of list. EVALEXPR is a python expression with i as parameter (example: i["separation"], {"firstname": i["name"].split()[0], "lastname": i["name"].split()[1]}) |
Type |
Description |
pretty |
DEFAULT, pretty prints python structure (pprint module) |
table |
prints list of dictionaries as a table (only common keys) |