It is legal, and the general rule is that you do need parentheses around a generator expression. As a special exception, the parentheses from a function call also count (for functions with only a single parameter). (Documentation)
Note that testing if my_string
appears in my_list
is as easy as
my_string in my_list
No generator expression or call to any()
needed!