C++17 introduced the new structured bindings syntax:
std::pair<int, int> p = {1, 2};
auto [a, b] = p;
Is there something similar in python3? I was thinking of using the "splat" operator to bind class variables to a list, which can be unpacked and assigned to multiple variables like such:
class pair:
def __init__(self, first, second):
self.first = first
self.second = second
...
p = pair(1, 2)
a, b = *p
Is this possible? And if so, how would I go by implementing this to work for my own classes?
A tuple in Python works as a simple solution to this problem. However, built in types don't give much flexibility in implementing other class methods.
p = (1, 2)a, b = p