Why Do You Use `itertools`?

143 points InternalServerError7

I have just been using the std library's iters, though it seems like a good portion of the community uses itertools. I just found out about the cartesian_product method. I could see myself using this method to help nest for-loops, since the below gives a compiler error due to the implicit call to into_iter of vec_b on each iteration.

    let vec_a = vec![1,2,3,4];
    let vec_b = vec![5,6,7,8];
    
    for a in vec_a {
        for b in vec_b {
         
        }
    }

Given the large list of itertools methods, I am wondering what other itertools methods people of the community use and for what scenarios?