Although, I like Q objects a lot, I don't feel that this is the best scenario usage. You could avoid duplicating query arguments by having two separate queries and then combining them.
Something like `four_weeks_range_query`, `eight_weeks_range_query` and finally
`inactive_l = eight_weeks_range_query.exclude(pk_in=list(four_weeks_range_query))
should have the same result. Either way, it's totally up to you.