Core LibrarystableAPI Reference

Choose documentation 3

stable

Current version

stable
English

Prerelease This site documents an alpha of libtmux. Its structure, URLs and APIs are subject to change.

function libtmux stable

keygetter

Fetch values in objects and keys, supported nested data.

Source and package
Qualified name
libtmux._internal.query_list.keygetter
Module
libtmux._internal.query_list
Package
libtmux
Source
src/libtmux/_internal/query_list.py
keygetter ( obj: Mapping[str, t.Any], path: str ) → None | t.Any | str | list[str] | Mapping[str, str]

Description#

With dictionaries:

>>> keygetter({ "food": { "breakfast": "cereal" } }, "food")
{'breakfast': 'cereal'}
>>> keygetter({ "food": { "breakfast": "cereal" } }, "food__breakfast")
'cereal'

With objects:

>>> from typing import List, Optional
>>> from dataclasses import dataclass, field
>>> @dataclass()
... class Food:
... fruit: List[str] = field(default_factory=list)
... breakfast: Optional[str] = None
>>> @dataclass()
... class Restaurant:
... place: str
... city: str
... state: str
... food: Food = field(default_factory=Food)
>>> restaurant = Restaurant(
... place="Largo",
... city="Tampa",
... state="Florida",
... food=Food(
... fruit=["banana", "orange"], breakfast="cereal"
... )
... )
>>> restaurant
Restaurant(place='Largo',
city='Tampa',
state='Florida',
food=Food(fruit=['banana', 'orange'], breakfast='cereal'))
>>> keygetter(restaurant, "food")
Food(fruit=['banana', 'orange'], breakfast='cereal')
>>> keygetter(restaurant, "food__breakfast")
'cereal'
Parameters
Esc

Type to search.

Reference preview Open reference