Please noooooooooo! I don't want to have to watch out how many indentations I've made, just for making sure I don't get any weird errors! (Just kidding!)
Do you have any (quick) examples what you mean with python like?
Some forced example, combining ranges with type deduction for collection types and simplified print, for a C++ version of using itertools.
int main() {
std::array values = {1, 545, 46, 23, 45, 102, 57};
fmt::println("Original value set {}", values);
auto some = values | views::take (2);
fmt::println("Take some elements {}", some);
auto squares = values | views::transform([](auto x) { return x * x;});
fmt::println("Squares the elements {}", squares);
auto even = values | views::filter([](auto x) { return x % 2 == 0;});
fmt::println("Get the even elements {}", even);
}
There you will see the comments why fmt and not std, just because of current compiler support, hence why I said on my previous comment, C++20 is still the best supported one currently.